it-swarm.com.de

Wie kann ich das Symbol der ausführbaren JAR-Datei ändern?

Ich konnte das Laufzeitsymbol mit diesem Beispiel so ändern

getFrame().setIconImage(Toolkit.getDefaultToolkit().getImage(getClass()
.getClassLoader().getResource("MyProject/resources/myIcon.png")));

aber gibt es eine Möglichkeit, NetBeans anzuweisen, myIcon.png für die ausführbare JAR-Datei (MyProject/dist/MyProject.jar) zu verwenden?

19
jacknad

Ein Launch-Wrapper ist die Lösung. Ich benutze launch4j, einen plattformübergreifenden Wrapper

launch4j website

8
Gary Benade

Sie können JSmooth verwenden, um eine ausführbare Java-Datei zu erstellen und diesem Symbol zuzuordnen.

7
krupal

Nein, da das Symbol nicht von Java bestimmt wird. Die einzige Möglichkeit, dies zu tun (zumindest für Windows), besteht darin, einen Wrapper wie launch4j zu verwenden und dann den Symbolpfad festzulegen. Wenn Sie Exe bereits mit keinem oder einem falschen Symbol verpackt haben, können Sie Recource Hacker verwenden. Andernfalls können Sie das JAR-Symbol nicht ändern

3
Marko Zajc

Bekanntlich ist es nicht möglich, das .jar-Symbol zu ändern. Wenn Sie dies tun möchten, sollten Sie alle .jar-Dateien in Ihrem Betriebssystem ändern. Trotzdem ist eine Lösung möglich. Sie können eine Verknüpfung für die .jar erstellen und diese dann ändern: Rechte Taste >> Eigenschaften >> Symbol ändern. 

 enter image description here

p.s. Die Symboldatei sollte eine .ico-Datei sein, sodass Sie viele Sites zur Konvertierung in der .ico-Erweiterung verwenden können, wenn Ihr Image eine andere hat.

Alternative 1: Sie können auch Launch4j verwenden. Dies ist die einfachste Art, eine ausführbare Anwendungsdatei zu generieren.

1
Marcello Marino

Eine Möglichkeit auf Mac ist die Verwendung dieser Zeile:

com.Apple.eawt.Application.getApplication().setDockIconImage( new ImageIcon(getClass().getResource( "resources/appIcon.png" )).getImage());

Es setzt Ihr Symbol für das Dock. Ich kann es momentan noch nicht testen, ich arbeite nicht an einem Mac, aber probiere es aus und hol mir ein Date.

1
SteamFire