我在 eclipse (JDK 1.8) 中有一个现有的 javafx 项目。目标是创建一个包含可执行文件的 msi 包。但不应包括 java 运行时。但是当我启动应用程序时,它显示以下错误:
Failed to find library ...\runtime\bin\server\jvm.dll
build.xml fx:deploy 目标如下所示:
<fx:deploy embedJNLP="true"
install="false"
shortcut="true"
extension="false"
includeDT="false"
offlineAllowed="true"
outdir="${basedir}/deploy"
outfile="test"
nativeBundles="msi"
updatemode="background"
verbose="true">
<fx:platform basedir=""/>
<fx:info title="test" vendor="test GmbH" />
<fx:application refId="fxApplication" />
<fx:resources refid="appRes" />
<fx:preferences install="false" shortcut="true" />
</fx:deploy>
平台 basedir 配置为不包含运行时。 <fx:platform basedir=""/>
如何配置项目以默认安装的 JRE 启动?
最佳答案
我不确定,但我的猜测是,javafx 打包程序中当前存在一个错误。即使<fx:platform basedir=""/>
正确结果是不包含运行时,生成的配置仍然包含指向不存在的运行时文件夹的条目
app.runtime=$APPDIR\runtime
在生成的 jar 旁边的配置中删除此条目应该会导致使用系统上默认安装的 JRE。
关于java - Eclipse 部署 javafx exe,无需运行时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36907582/