我在我的 Mac 上使用以下 Maven 插件配置来生成 native 安装程序。
<plugin>
<groupId>com.zenjava</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>8.5.0</version>
<configuration>
<appName>${project.name}</appName>
<title>${project.name}</title>
<description>${project.description}</description>
<vendor>example</vendor>
<certCountry>com</certCountry>
<mainClass>${mainClass}</mainClass>
<needMenu>true</needMenu>
<additionalAppResources>src/main/deploy/package/all</additionalAppResources>
<bundleArguments>
<icon.ico>src/main/resources/icons/Icon.ico</icon.ico>
<icon.png>src/main/resources/icons/Icon_32.png</icon.png>
<icon.icns>src/main/resources/icons/Icon.icns</icon.icns>
</bundleArguments>
<jfxMainAppJarName>${project.build.finalName}.jar</jfxMainAppJarName>
</configuration>
</plugin>
Example.app 文件夹和Example.dmg 安装程序均显示正确的应用程序图标,但Example.pkg 安装程序显示纯java jar 图像(1)。 如何更改该图像 (1)?
是否也可以更改标题栏(2)中的小图标?
我的项目的文件夹结构:
- 源代码
- 主要
- java
- *.java
- 资源
- 图标
- 图标.ico
- 图标.icns
- 图标_*.png
- 图标
- 部署
- 包装
- 全部
- 许可证
- 全部
- 包装
- java
- 主要
- pom.xml
我尝试使用 Oracle Java JDK 8 Update 40 和 Update 101(64 位)
最佳答案
为了避免重复,我也将答案粘贴在这里:
你好,
这不是错误,它“只是”未记录(似乎有很多人知道这一点,或者很少有人使用此功能)。
请参阅getConfig_BackgroundImage
-方法:
private File getConfig_BackgroundImage(Map<String, ? super Object> params) {
return new File(CONFIG_ROOT.fetchFrom(params), APP_NAME.fetchFrom(params) + "-background.png");
}
请创建一些图像并将其放置在 src/main/deploy/package/macosx
下面,它必须是 PNG 文件格式。该文件应命名为 ${project.name}-background.png
由 bundler 获取。
这应该在有<verbose>
时打印给您。设置为true
.
一般建议:打开 VERBOSE 开关;)打包器本身的行为有所不同(例如不删除临时创建的工作文件夹,从而可以进一步调整您的内容)并打印出更重要的调试内容。
官方文档中甚至提到了详细提示: https://docs.oracle.com/javase/8/docs/technotes/guides/deploy/self-contained-packaging.html#BCGHHDGC
关于javafx-maven-plugin mac pkg 安装程序不显示应用程序图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38919686/