我从Eclipse Juno中构建的项目中创建了一个可运行的.jar文件。该项目使用JRE7和JavaFX库,我将其添加到构建路径中。
构建路径设置
.jar文件在Windows 7计算机上成功执行。但是,当我尝试在WindowsXP计算机上运行.jar文件时,它失败并出现以下链接错误:
WindowsXP上的错误
错误如下:
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: com.sun.glass.ui.win.WinApplication._invokeLater(Ljava/lang/Runnable;)V
at com.sun.glass.ui.win.WinApplication._invokeLater(Native Method)
at com.sun.glass.ui.Application.invokeLater(Application.java:338)
at com.sun.javafx.tk.quantum.QuantumToolkit.defer(QuantumToolkit.java:620)
错误发生在程序尝试加载使用JavaFX的类时,WindowsXP机器具有JavaFX附带的Java Version 7 Update 40,因此我无法弄清楚它为什么会失败。
这可能是32位与64位问题吗?
此外,在构建路径设置上,我想知道我是否包含正确的JavaFX jar文件。我有两个可供选择,我不确定要包含哪一个。我认为它是第二个因为它是JRE的一部分。
C:\ Program Files \ Java \ jdk1.7.0_25 \ jre \ lib \ jfxtr.jar
C:\ Program Files(x86)\ Java \ jre7 \ lib \ jfxtr.jar
由于
答案 0 :(得分:1)
1。 JavaFX
已嵌入JRE
,但它现在仍然是单独的库。因此,如果您在项目中使用JavaFX
类,JVM
应该“知道”这一点。您的*.jar
文件应包含有关jfxrt.jar
的信息。的 How to do that? 强>
2。 JRE
文件夹,例如*.jar
个文件。从IDE开发应用程序时使用的JDK/JRE
文件夹。因此,您应该使用C:\Program Files\Java\jdk1.7.0_25\jre\lib\
路径作为项目构建路径'libs。
答案 1 :(得分:0)
据我所知,没有办法在Windows XP上运行JavaFX应用程序。
答案 2 :(得分:-1)
尽管我付出了很多努力,但是当我在Eclipse中创建它时,我无法在Windows XP中执行.jar文件。但是当项目从NetBeans导出时,我可以使它工作。诀窍是:我在NetBeans中创建了一个新的“Swing应用程序中的JavaFX”。这样,IDE就为JavaFX导入了所有必需的库。我将Eclipse中的所有.java文件复制到新的NetBeans项目中,并且工作正常。对NetBeans感到满意!