我创建了一个 JavaFX 应用程序,并使用以下命令创建了其本机包Ant。当我尝试使用双击创建的捆绑包中的 Jar 启动应用程序时,它成功启动了我的应用程序。但是当我尝试双击 MyApplication.exe (比如说)时,它抛出JavaFX 启动器错误“运行应用程序时出现异常”.
我比较了两个jre,发现有很多缺少的jar、exe、dll和一些属性文件。
我有这些环境设置 -
JAVA_HOME -- C:\Program Files\Java\jdk1.7.0_10
JREFX_HOME -- C:\Program Files\Oracle\JavaFX 2.2 Runtime
Path contains an entry of C:\Program Files\Java\jdk1.7.0_10\bin
JAVA_HOME 和 JREFX_HOME 在我的 build.xml 中使用来获取 ant-javafx.jar 和 jfxrt.jar --
${env.JAVA_HOME}/lib/ant-javafx.jar
${env.JREFX_HOME}/lib/jfxrt.jar
我创建捆绑包的步骤是 -
<target name="CreatingExe" depends="SignedJar">
<fx:deploy width="800" height="600" nativeBundles="all" outdir="${OutputPath}" outfile="${app.name}">
<fx:info title="${app.title}"/>
<fx:application name="${app.title}" mainClass="${main.class}"/>
<fx:resources>
<fx:fileset dir="${OutputPath}" includes="*.jar"/>
<fx:fileset dir="${WorkingFolder}/temp"/>
</fx:resources>
</fx:deploy>
</target>
build.xml 中还需要什么才能使用 exe 正确启动应用程序?
Thanks
通过从以下位置复制 jre 解决了无法启动 JavaFx exe 的问题“C:\Program Files\Java\jdk_version\jre” to \bundles\MyApplication\runtime\jre在创建 exe 时的构建步骤中 -
<target name="CopyJre" depends="CreatingExe">
<delete dir="${app_path}/bundles/MyApplication/runtime/jre"/>
<mkdir dir="${app_path}/bundles/MyApplication/runtime/jre"/>
<copy todir=${app_path}/bundles/MyApplication/runtime/jre">
<fileset dir="${env.JAVA_HOME}/jre" />
</copy>
</target>
JAVA_HOME = C:\Program Files\Java\jdk_version
Thanks
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)