2013-03-23 103 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。