Ich bräuchte Hilfe bei der Erstellung eines JAR-Archivs

snoopysalive

Mitglied
Hallo!

Ich habe ein kleines Problem beim Erstellen eines JAR-Archivs:

Das Programm, das ich geschrieben habe, verwendet eine JToolBar, wofür natürlich Icon-Images notwendig sind. So, jetzt habe ich mal für das JAR-File eine Manifest-Datei 'manifest' mit dem Eintrag
Code:
Main-Class: Lexicalizer
erstellt und anschließend das Archiv mit dem Befehl
Code:
jar -cmf manifest Lexicalizer.jar *.class icons/
gebaut (wobei 'icons/' die Images für die ToolBar-Icons enthält).

Hier mal der Inhalt meines JAR-Archivs (gekürzt):
Code:
(... hier stehen noch ein paar andere class-Files ...)
Lexicalizer.class
MainFrame.class
icons/
icons/collapseall.gif
icons/expandall.gif
icons/read_obj.gif
icons/save_edit.gif
icons/trash.gif

Wenn ich jetzt das Programm per
Code:
java -jar Lexicalizer.jar
starte, bleiben die Icons aber auf der Strecke. Soll heißen, die Icons in der ToolBar stellen keine Bilder dar.

Wie muss ich also Bilder in ein JAR-Archiv einbinden bzw. wie muss ich in Java programmieren, damit Bilder innerhalb von JAR-Archiven gefunden werden?

Danke,
Matthias
 
Hallo,

du bist hier im falschen Unterforum. Jar-Archive hat allgemein mit Java zu tun und nicht direkt mit J2EE.
Bitte Forumsuche benutzen. Es gibt hier unmengen Beiträge zu diesem Thema.

MFG

zEriX
 
Also ich für meinen Teil nutze FarJar - das ist ein OpenSource Tool was unter anderem auch in Eclipse läuft. Da ich aber auch nicht soviel ahnung von Java habe und damit auch noch nich so jahrelange Erfahrung gemacht habe bin ich mir nicht sicher ob dir das Hilft.

Aber soweit ich weiß, packt FatJar alles was zu dem Projekt gehört mit in ein Jar-File! Du kannst dir aussuchen was du reinhaben willst und was nicht und dann bastelt dir FatJar ein einziges File mit allen nötigen Inhalten für das Projekt. Danach musst du dir auch nichtmehr die von dir genutzen Jars in dein java/ext/jar kopieren weil alles enthalten ist.

Ich hoffe das bindet im Notfall auch Icons mit ein. Aber ich denke schon ;)
Einfach mal versuchen... Ist ja nicht sonderlich groß!

Gibts auf sourceforge - müsste ich selbst nun auch suchen
 
Thema wurde ja wie es aussieht schon verschoben.

Der Tipp von Klein0r wird dir nicht sehr viel bringen, da deine Fehler im Code liegen.

Versuch es mal mit
Code:
ImageIcon icon = new ImageIcon(ClassLoader.getSystemResource(/*name der Datei*/));

oder mit
Code:
ImageIcon icon = new ImageIcon(this.getClass().getResource(/*name der datei*/);

Nächstes mal bitte erst die Forumssuche nutzen.

MFG

zEriX
 
Zurück