2012-06-09 108 views
0

我剛剛將我的Netbeans升級到了7.1.2,因爲我認爲我在某些JavaFX開發中會遇到麻煩,但是我沒有太多樂趣。Netbeans 7.1.2 JavaFX UnsatisfiedLinkError

首先,我下載了最新的Netbeans並安裝它,一切正常。

然後Netbeans告訴我,我沒有JavaFX支持,所以我從Oracle和NetBeans JavaFX插件下載了jdk-7,現在我可以創建JavaFX應用程序。

但是,每當我嘗試編譯一個JavaFX應用程序,我得到以下錯誤:

Error: failed to msvcr100.dll java.lang.UnsatisfiedLinkError: C:\Program Files (x86)\Java\JavaFX 2.1 Runtime\bin\msvcr100.dll: Can't find dependent libraries 

Exception in thread "main" java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: C:\Program Files (x86)\Java\JavaFX 2.1 Runtime\bin\glass.dll: Can't find dependent libraries 

現在這兩個提到的文件的存在,他們中提到的地點,我假設的問題與我的classpath和/或Sun/Oracle Netbeans之前的安裝有關。

我真的不能真正被打擾卸載/重新安裝我所有的Java的東西,所以我想知道如果任何人有任何建議如何解決這個問題?

我讀過的一些文章提到將某些DLL直接複製到項目工作區中,但這聽起來並不合適。

任何意見或建議將不勝感激。

謝謝!

+0

錯誤表明您沒有某些庫。這些.dll依賴。您需要確保您的庫路徑包含這些相關文件所在的目錄(如果您將它們放在某個外部文件夾中),或者將它們複製到項目文件夾中,以便加載程序可以找到它們。後一種方法從分佈的角度來看更容易 – Attila

+0

感謝阿提拉。 我明白這一點,但這些錯誤來自新創建的JavaFX應用程序。我沒有對它們進行任何開發,只是創建了一個新的JavaFX應用程序並試圖運行它,所以我不知道哪些依賴關係丟失。 – Tony

回答

4

右鍵單擊您的Netbeans項目並單擊「屬性」。導航到「庫」並確定當前項目使用哪個「Java平臺」(在下拉列表中選擇一個)。點擊附近的「管理平臺...」並選擇確定的Java平臺。轉到JavaFX選項卡,然後檢查JavaFX是否已啓用並指向文件系統中正確的SDK和運行時路徑。
另外考慮重新啓動Netbeans甚至Windows。

+0

似乎經過了一些混亂,我設法讓它工作。 我想我的Netbeans只是有點困惑在哪裏尋找必要的文件。 謝謝! – Tony

0

如果您使用的是MacOS,即使在安裝Java 7後,默認SDK仍然是Java 6,儘管FX可以被激活。只需添加JDK7即可解決問題。