【问题标题】:Set Icon for executable Jar file [duplicate]为可执行 Jar 文件设置图标 [重复]
【发布时间】:2013-11-24 12:05:04
【问题描述】:

我有一个简单的可执行 Jar 文件。如何设置此文件的图标?在我的例子中,我使用了我想要更改的标准 Jar 图标。

【问题讨论】:

  • 假设您使用的是 Windows。当您安装 JRE 时,.jar 扩展名与 java 二进制文件相关联并获得一个默认图标。这就是您所看到的,您无法在应用程序代码中以编程方式覆盖它。您必须使用其他一些黑客攻击方式,例如jsmooth.sourceforge.net(其他人也提到过)。无论如何,您可以按照其他人告诉您的方式设置 Swing 框架提供的图标(“窗口的运行时图标”)

标签: java jar executable-jar


【解决方案1】:

你可以使用setIconImage:

frame.setIconImage(
new ImageIcon(getClass().getClassLoader().getResource("PATH/TO/YourImage.png"))
);

更新

如果您想更改coffee-cup,那么您可以使用JSmooth 等工具来创建可执行的java 文件并更改jar 文件图标。

正如您在 cmets 中看到的那样,JSmooth 可用于 Windows 操作系统。对于Mac,您可以查看link here,了解如何更改图标。

对于linux 操作系统,您可以创建一个桌面launcher 并为其选择一个图标图像。

【讨论】:

  • 它只会改变左上角的咖啡图标,不会改变jar文件的图标。
  • 他更新了他的问题。
  • 是的,但是如何,我想在构建时配置它。
  • 和 Prasad 一样:OP 要求更改 JSmooth 没有制作的 JAR 图标。 JSmooth 确实创建了一个 EXE 并将一个图标设置为它而不是 JAR 文件。此外,此解决方案仅适用于 Windows 操作系统。我认为 JSmooth 是一个很好且非常有效的选择,但您应该说明这些事实。如果你这样做了,我会很高兴撤销我的反对票。
  • 在 Windows 上工作:setIconImage(new javax.swing.ImageIcon(getClass().getResource("/icon.png")).getImage());
【解决方案2】:

我的一个朋友向我推荐了JSmooth,它可用于将图标与 jar 文件相关联。

你可以试试这个。

编辑:

但这仅适用于 Windows 操作系统。

PS : 这个工具可以用来将jar转换成exe,然后你可以给它设置图标。

【讨论】:

  • 你曾经使用过这个工具吗?如果是这样,那么您知道 JSmooth 不会将图标与 JAR 文件相关联。它是一个 JAR 包装器,它生成一个 EXE 文件来执行 JAR。您可以将图标关联到此 EXE 文件而不是 JAR 文件本身。 JAR 图标仍然是咖啡杯。
  • @dic19 是的,男人同意了。但是图标会改变,这是要求。
  • 不,不是。 OP 要求更改 JSmooth 没有制作的 JAR 图标。 JSmooth 确实创建了一个 EXE 并为其设置了一个图标,而不是 JAR 文件。此外,此解决方案仅适用于 Windows 操作系统。我认为 JSmooth 是一个很好且非常有效的选择,但您应该说明这些事实。如果你这样做了,我会很高兴撤销我的反对票。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-13
  • 1970-01-01
  • 1970-01-01
  • 2020-09-14
  • 2012-03-24
  • 1970-01-01
相关资源
最近更新 更多