Ich habe versucht, mein Projekt als ausführbares Glas zu exportieren, aber meine Ressourcen werden nicht geladen, da ich direkt vom Projektpfad aus auf das Bild zugreifen wollte. Zum Beispiel:Java: Zugriff auf Bilder in Ressourcen nicht möglich
ImageIcon icon = new ImageIcon("resources/icon.png");
Dies funktionieren würde, wenn ich das Projekt von Eclipse-lief selbst, aber ich bemerkte, dass die Bilder nicht in der JAR-Datei wurden eingeschlossen sind. Nach der Recherche habe ich herausgefunden, dass ich Quellordner erstellen und die Bilder/Textdateien darin einfügen muss, und dann getClass(). GetResource() verwenden, um auf sie zuzugreifen. Wenn ich dies jedoch tue, wird die URL immer als null zurückgegeben.
Als Referenz ist das, was wie mein Projekt-Explorer aussieht:
Test
---src
---resources
---icon.png
---config
---file.ini
Und hier ist der Code, der mir eine Nullpointer schenkt, wenn für den Zugriff auf icon.png versuchen:
ImageIcon icon = getClass().getResource("/resources/icon.png");
Alternativ Ich habe auch versucht:
ImageIcon icon = getClass().getClassLoader().getResource("resources/icon.png");
Aber das endet auch in einem NullPointerExc eption. Ich habe viele Lösungen online überprüft, aber keine von ihnen schien für mich zu funktionieren. Bitte beachten Sie, dass ich auch auf die INI-Datei zugreifen kann. Eine Lösung, die nur für Bilder funktioniert, wird mein Problem nicht vollständig lösen. Jede Hilfe wäre sehr dankbar, danke.
, wenn sie als ein Glas verpackt , wo ist icon.png? Könnten Sie auch die Jar-Struktur veröffentlichen? – alexbt
Ressourcen müssen als Ordner unter/src gehen – basic
Versuchen Sie '" /icon.png "' - oder schauen Sie mit 7zip, WinZip oder so in den Jar für den Pfad. Ohne den führenden '/' wäre der Pfad relativ zum Paketpfad der Klasse, auf der getResource ausgeführt wird. –