Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java 1.7u80上运行JavaFX应用程序时出现问题_Java_Javafx_Netbeans 8 - Fatal编程技术网

在Java 1.7u80上运行JavaFX应用程序时出现问题

在Java 1.7u80上运行JavaFX应用程序时出现问题,java,javafx,netbeans-8,Java,Javafx,Netbeans 8,我在MAC上使用Netbeans 8.02,并从新项目向导创建一个简单的JavaFX应用程序 当我将平台设置为Java 1.8时,它工作正常,但当我尝试在Java 1.7u80上运行它时,我得到了“Java.lang.NoClassDefFoundError:javafx/application/application”。从IDE或命令行运行时的行为相同 任何一个平台都可以编译,所以我安装的两个平台的类路径上都有JavaFX 我的目标应用程序必须在1.7上运行,所以我不能简单地使用1.8,就到此

我在MAC上使用Netbeans 8.02,并从新项目向导创建一个简单的JavaFX应用程序

当我将平台设置为Java 1.8时,它工作正常,但当我尝试在Java 1.7u80上运行它时,我得到了“Java.lang.NoClassDefFoundError:javafx/application/application”。从IDE或命令行运行时的行为相同

任何一个平台都可以编译,所以我安装的两个平台的类路径上都有JavaFX


我的目标应用程序必须在1.7上运行,所以我不能简单地使用1.8,就到此为止。

如果您想在Java 1.7上运行JavaFx应用程序,您需要手动将jfxrt.jar添加到类路径中。在Java1.8中,jfxrt.jar默认位于类路径中。这就是为什么在1.7上运行时会出现这个问题


您应该能够通过IDE添加它。您还可以使用一些第三方工具,如

,事实证明我在NetBeans IDE中遇到了这个已知的错误

这听起来像是路径设置导致ide意外地使用了为平台V1.8构建的Ant脚本


我将Netbeans本身的平台更改为JDK 1.7,现在一切都可以为1.7构建,并100%使用JDK 1.7u80运行JavaFX应用程序。

JavaFX需要JDK8.0。@CoderNeji不需要。JavaFX8需要JDK8.0。您可以在Java 7上运行JavaFX2.x,但是,建议使用JDK 8,因为8版本中没有大量的bug修复。我的也有一个问题,netbeans说请更新JDK。。。这就是为什么我做出这样的评论。。。编辑我使用了JavaFX8I,在没有问题之前,我让它在JDK7中运行,切换机器,现在没有项目将在JDK7中运行。我需要理解为什么。我可以在运行时使用-cp将jfxrt.jar添加到类路径中,这没有什么区别。我确实尝试使用-cp添加它,但没有成功,仍然是相同的问题。我相信在后来的1.7JDK更新中,OracleJFXRT.jar包含在类路径中。