gpt4 book ai didi

java - 无法使用 native bundle exe 启动 JavaFX 应用程序

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:56:04 24 4
gpt4 key购买 nike

我已经创建了一个 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

我创建 bundle 的步骤是 -

<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 一起正确启动?

谢谢

最佳答案

通过将 jre 从 "C:\Program Files\Java\jdk_version\jre" 复制到 \bundles\MyApplication\runtime\jre 解决了无法启动 JavaFx exe 的问题> 在创建 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

谢谢

关于java - 无法使用 native bundle exe 启动 JavaFX 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14253079/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com