为什么javaFX应用程序jar在jdk上运行,而不是在jre上运行?

为什么javaFX应用程序jar在jdk上运行,而不是在jre上运行?,java,jar,javafx,Java,Jar,Javafx,我有一个JavaFX应用程序,它调用一些JNI代码,使用预加载程序jar,并使用JDK1.7编译。 现在,当我使用JRE7在另一台计算机上运行jar时,通过: 双击jar:它启动,但无法加载包含库的JNI代码,因此卡住了 使用“java-jar”通过终端运行jar:应用程序运行完全正常 现在如果我在这台机器上安装jdk, 它运行良好,即使双击 有人能告诉我这三种情况有什么不同吗?尝试将日志记录添加到程序中,以便您能够找出JAR文件无法正确执行的原因 您应该检查您的清单文件是否正确-其中有一个类路

我有一个JavaFX应用程序,它调用一些JNI代码,使用预加载程序jar,并使用JDK1.7编译。 现在,当我使用JRE7在另一台计算机上运行jar时,通过:

  • 双击jar:它启动,但无法加载包含库的JNI代码,因此卡住了
  • 使用“java-jar”通过终端运行jar:应用程序运行完全正常
  • 现在如果我在这台机器上安装jdk, 它运行良好,即使双击
    有人能告诉我这三种情况有什么不同吗?

    尝试将日志记录添加到程序中,以便您能够找出JAR文件无法正确执行的原因


    您应该检查您的清单文件是否正确-其中有一个类路径,您可能需要查看。

    这可能与JavaFX没有随Java 1.7完全发布有关,但作为开发人员预览包含了更多内容

    另外,JavaFX打包和部署与标准Java略有不同。在打包JavaFX应用程序时,应该使用一个名为“javafxpackager”的新实用程序。请在此处查看文档: