在 Java 你如何调试由 JPackage 创建的 exe

In Java how do you debug exe created by JPackage

我正在尝试将使用 Izpack 创建的 Java 应用程序的 Windows 安装转换为使用 Java 14 中提供的 JPackage。安装程序构建并安装,但是当我尝试运行 它创建的 exe 失败,但没有给出失败原因的信息。

是否有日志或某种方法可以找出启动失败的原因?

使用 jpackage --win-console 标志启用控制台输出,运行 您的应用来自 CMD.exe,因此可以看到它写入的任何输出。

但是,如果您启用 jpackage --win-console,则您使用 --add-launcher 添加的所有其他 EXE 的控制台输出都会打开,除非启动器的属性文件包含 win-console 这行关闭控制台。反过来好像不行。

通过将 --main-class 设置为 Hello World / dump System properties + env,可以更轻松地了解 jpackage 正在做什么。