2013-03-23 50 views
10

JavaFX应该包含在最新版本的JDK中。我正在使用1.7 v 17.进口像:在Eclipse中未识别JavaFX

import javafx.fxml.Initializable; 

不被识别。我宁愿不必手动链接到jar。

我听说这是一个bug之前,但它应该已经修复。 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7166330

有没有人有关于如何识别javafx的答案。我不想让e(fx)clipe为我做,我不想连接罐子。据我了解,它现在包含在jdk的最新版本中,因此我应该可以像上面那样进行导入?

回答

9

JavaFX不在JDK7中的任何默认类路径中 - 请参阅该错误已修复的版本。

在JDK8中这是固定的,并且JavaFX位于ExtensionClasspath中,但仍然会从Eclipse获取警告,因为扩展类路径上的内容被视为实现细节 - 您可以自己在JRE运行时中修复此问题。

e(fx)clipse有什么问题?无论您使用JDK7还是JDK8进行开发,它都可以解决您的所有问题?

+1

谢谢汤姆。我实际上已经安装了你的e(fx)剪辑库,但它没有修复导入,并且任何@FXML都无法识别。我意识到这一点,因为我在这里http://efxclipse.org/install.html#for-the-ambitious跟随你的链接,它告诉我它已经安装。我曾提到我不想单独使用其他任何东西,因为我认为现在应该没有做任何“特殊”的工作。 – Matt 2013-03-23 22:55:37

+0

那么你现在正在运行e(fx)clipse吗?如果您在运行时遇到问题,我们应该尝试追查您的情况下不起作用的内容。一个原因可能是你的eclipse不是以JDK7开始的,因此e(fx)clipse将不会加载。 您还必须使用向导创建项目或使用项目属性对话框手动添加JavaFX类路径容器 – tomsontom 2013-03-23 23:04:12

+0

它必须运行,因为我可以使用css提示功能...我的控制器类仍然不能识别任何javafx导入如上所述......我应该使用向导重新创建项目,看看是否有帮助? – Matt 2013-03-24 00:10:10

5

您可以手动添加“jfxrt.jar”!它在安装的JDK中。例如:

  • Windows XP中: “C:\ Program Files文件\的Java \ jdk1.7.0_17 \ JRE \ LIB \ jfxrt.jar
  • 的Windows 7(32位):“C: \程序文件(x86)\ Java的\ jdk1.7.0_17 \ JRE \ LIB \ jfxrt.jar
  • 的Windows 7(64位):” C:\ Program Files文件\的Java \ jdk1.7.0_17 \ jre \ lib \ jfxrt.jar

复制jar文件并将其放到项目的子文件夹中(例如,/ lib)。

现在将“jfxrt.jar”添加到类路径中。在项目上单击鼠标右键,然后从属性 - > Java构建路径 - >库 - 从...中添加JAR并添加jar文件。

+0

谢谢。这对我有效。 – Saju 2014-08-04 05:55:52

9

在Ubuntu 14.10我必须安装

sudo apt-get install openjfx 

然后,我创建使用e(FX)clipse和默认JRE(Java的8 OpenJDK的-AMD64)缺省项目第一的OpenJFX。