4

我正在尝试jpackage为我的 Java 应用程序创建安装程序。我在使用 OpenJDK 15.0.1 的 Windows 10 上。我可以使用构建安装程序

jpackage --input C:\MyApp --main-jar MyApp.jar

这基本上可以,但是安装的应用程序缺少资源文件。根据文档,我应该能够构建一个应用程序映像,将我的资源文件添加到映像中,然后从修改后的应用程序映像构建安装程序,如下所示

cd C:\MyApp
mkdir build
copy MyApp.jar build
jpackage --type app-image --n MyAppImage --input C:\MyApp\build --main-jar MyApp.jar
copy <resource files> MyAppImage
jpackage --app-image MyAppImage --name MyAppInstaller

这会构建 MyAppImage,但是当我运行jpackage --app-image它时会崩溃。这是输出:

WARNING: Using incubator modules: jdk.incubator.jpackage
java.io.IOException: Command [C:\Program Files (x86)\WiX Toolset v3.11\bin\light.exe, -nologo, -spdb, -ext, WixUtilExtension, -out, C:\Users\Jerry\AppData\Local\Temp\jdk.incubator.jpackage10106877493523723400\images\win-exe.image\MyAppInstall-1.0.msi, -sice:ICE27, -loc, C:\Users\Jerry\AppData\Local\Temp\jdk.incubator.jpackage10106877493523723400\config\MsiInstallerStrings_en.wxl, C:\Users\Jerry\AppData\Local\Temp\jdk.incubator.jpackage10106877493523723400\wixobj\main.wixobj, C:\Users\Jerry\AppData\Local\Temp\jdk.incubator.jpackage10106877493523723400\wixobj\bundle.wixobj]in C:\Users\Jerry\AppData\Local\Temp\jdk.incubator.jpackage10106877493523723400\images\win-msi.image\MyAppInstall exited with 103 code

有人遇到过这种情况么?我应该尝试什么?

(这是上一篇文章的后续)

4

1 回答 1

3

似乎是:https ://bugs.openjdk.java.net/browse/JDK-8254783

当应用程序名称与安装程序名称不同时,jpackage 在 Windows 上失败

我可以使用 JDK 15 build 36 重现您的崩溃。

--name如果我为应用程序图像指定相同的参数,它适用于我。在您的情况下,工作命令应该是:

jpackage --app-image MyAppImage --name MyAppImage

(与 app-image 命令的名称相同,但您可能需要更改名称)。

对于它的价值,这适用于最新的 JDK 16-ea。(另见关于 JBS 问题的评论)。

于 2020-11-09T22:10:33.710 回答