【发布时间】:2019-11-16 21:22:58
【问题描述】:
我有一个只能从 JAR 加载的 javaFX 应用程序,但是我想更改 mac 扩展坞中的图标。我已经设法在Windows上解决了。我正在使用 Netbeans IDE,并且不希望添加额外的苹果 JAR 扩展文件。正因为如此,我不确定这是否可能。
【问题讨论】:
-
您是直接使用
runnable jar还是为特定平台的可运行文件打包jar?
我有一个只能从 JAR 加载的 javaFX 应用程序,但是我想更改 mac 扩展坞中的图标。我已经设法在Windows上解决了。我正在使用 Netbeans IDE,并且不希望添加额外的苹果 JAR 扩展文件。正因为如此,我不确定这是否可能。
【问题讨论】:
runnable jar 还是为特定平台的可运行文件打包jar?
到目前为止,我还没有看到使用 JavaFX 的方法,但有一种方法可以使用 Apple 特定的 Java API:
public static void main(String[] args) {
try {
URL iconURL = Main.class.getResource("ui/resources/Logo@2x.png");
Image image = new ImageIcon(iconURL).getImage();
com.apple.eawt.Application.getApplication().setDockIconImage(image);
} catch (Exception e) {
// Won't work on Windows or Linux.
}
launch(args);
}
这至少适用于 Oracle Java 1.7.0_40 和 1.8.0_25。
缺点是,当您启动 JAR 时,您会在 Dock 中看到 Java 徽标一小段时间,然后会变成您的图标。这是一个技术限制,只能通过创建真正的原生 OS X 包来解决。
【讨论】: