2012-06-09 60 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即可解决问题。