JavaFX不在Java7U40的类路径上,oracle文档称应包括该类路径

JavaFX不在Java7U40的类路径上,oracle文档称应包括该类路径,java,javafx,Java,Javafx,如果我运行C:\ProgramFiles\java\jdk1.7.0\u 40\bin\javap javafx.application.application我会遇到一个错误:找不到类:javafx.application.application 如果我运行Netbeans,它有一个java7平台和一个JavaFX平台,这两个平台都有相同的设置(相同的平台文件夹、相同的类、相同的javadoc),因此我假设这两个平台的行为相同。如果我创建一个新的Java项目,import javafx.app

如果我运行
C:\ProgramFiles\java\jdk1.7.0\u 40\bin\javap javafx.application.application
我会遇到一个
错误:找不到类:javafx.application.application

如果我运行Netbeans,它有一个java7平台和一个JavaFX平台,这两个平台都有相同的设置(相同的平台文件夹、相同的类、相同的javadoc),因此我假设这两个平台的行为相同。如果我创建一个新的Java项目,
import javafx.application.application
会给出一个错误
package javafx.application不存在
,但是创建一个新的javafx项目会创建一个使用大量javafx内容而没有任何错误的项目

作为Java7U40,它应该内置JavaFX2.2.40,是吗?没有

如果我能让JavaFX正常工作,我将在Netbeans中的一个普通Java项目中使用它,该项目已经存在,并且将嵌入到现有的Swing GUI中,而不是新的JavaFX项目中

我在这里看到了关于堆栈溢出的其他类似问题,但它们至少似乎能够编译和运行应用程序,并且遇到运行时错误或意外行为。我甚至不能达到那一点


既然Oracle说应该包括JavaFX2.2.40,那么如何在7u40下的Java应用程序中使用JavaFX?我是否应该像其他内置Java包那样正常地包含javafx包?

javafx包含在Java7中,但默认情况下不在类路径上。如果不想创建JavaFX项目,则需要手动将
jfxrt.jar
文件添加到项目中;它位于
JAVA\u HOME/jre/lib
目录中

如果从命令行运行,则需要

java-cp java_HOME/jre/lib/jfxrt.jar:。com.example.MainClass


如果您升级到Java8,那么
jfxrt.jar
文件位于类路径上(它被移动到
Java\u HOME/jre/lb/ext
)。

我认为您的假设是错误的。我会说,创建一个新的JavaFX项目,并从现有项目中引用它,或者将现有代码复制到其中。谢谢。您回答了我的特定问题,比这个问题被标记为重复的答案更好,特别是“现在不包括它吗?(请参阅oracle文档)”仍然没有回答的问题是Java和JavaFX平台在Netbeans中似乎相同,但我发现有一个“启用JavaFX”选中JavaFX平台的复选框;这必须在正常的基础上做一些特殊的设置。