有没有办法使用 jpackage 更改安装程序文件的图标?

kof*_*rts 5 java windows-installer packaging javafx jpackage

我有一个简单的模块化 javafx 应用程序。

我编译它使用

dir /s /b src\*.java > sources.txt & javac --module-path %PATH_TO_FX% -d mods/hellofx @sources.txt & del sources.txt
Run Code Online (Sandbox Code Playgroud)

这将创建 mods 目录

然后我使用命令创建运行时映像

jlink --module-path "%PATH_TO_FX_MODS%;mods" --add-modules hellofx --output hellofx
Run Code Online (Sandbox Code Playgroud)

这将在 hellofx 目录中创建运行时映像

现在我使用 jpackage 命令来创建 Windows 安装程序。在目录中,我有一个应用程序图标。

jpackage --runtime-image hellofx --module hellofx/hellofx.HelloFX --win-shortcut --win-menu --icon smile.ico
Run Code Online (Sandbox Code Playgroud)

此图标用于已安装的应用程序,但有没有办法为安装程序文件本身创建图标?名为 HelloFX-1.0 的安装程序文件没有图标。有没有办法配置 jpackage 来更改这个文件的图标?谢谢您的帮助!

在此处输入图片说明

mip*_*ipa 7

在底层,jpackage 工具使用特定于平台的工具来创建各种包类型。因此,封装的定制也是非常特定于平台的,并且必须针对每个支持的平台和封装类型单独处理。但是,您可以使用 jpackage 的两个常见功能来简化此任务。

第一个选项--temp some_temp_dir要求 jpackage 将创建所选包类型所需的所有脚本和资源复制到目录 some_temp_dir 中。这些是 jpackage 默认使用的脚本和资源。

第二个选项--resource-dir some_resource_dir要求 jpackage 首先在目录中查找资源some_resource_dir,然后仅对未找到的资源使用其默认值。

使用这两个选项,您可以首先生成一组默认资源,您可以从中选择要修改的资源并将它们复制到目录中some_resource_dir。在第二次运行 jpackage 时,您可以应用这些更改。您可以通过这种方式进行的最可能的更改是将各种包类型使用的默认图标替换为您自己的图标。