Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Help! Kann Bilder nach Packen in ein jar-File nimmer finden!
hab grad ein mittelschweres Problem: ich hab alle .class-Files (ist nur ne Handvoll) in einem Verzeichnis. Dort gibt es ein Unterverzeichnis "gif", wo logischerweise alle Bilder drinliegen.
Auf diese greife ich mit getToolkit().getImage("gif/bild.gif") zu. Wenn das aber gepackt ist ins Jar, dann funktioniert das nur, wenn das jar-File auch dort liegt, wo gif das Unterverzeichnis ist.
Wie kann ich den gleich im jar-File suchen lassen?
Vielen Dank für die hoffentlich schnelle Hilfe,
MfG, Tim
Weil ich, wenn ich was ändere und es ausprobieren will in Eclipse, nicht jedes mal ein jar-File packen will.
Außerdem funzt es noch nicht ganz, ich bekomme beim Laden des Bildes einen Fehler:
Code:
Uncaught error fetching image:
java.lang.NullPointerException
at sun.awt.image.URLImageSource.getConnection(Unknown Source)
at sun.awt.image.URLImageSource.getDecoder(Unknown Source)
at sun.awt.image.InputStreamImageSource.doFetch(Unknown Source)
at sun.awt.image.ImageFetcher.fetchloop(Unknown Source)
at sun.awt.image.ImageFetcher.run(Unknown Source)
Ich würde in Java immer Slashes verwenden, die gehen auf Unix, Linux, Windows und wahrscheinlich auch auf allen anderen Systemen. Die Backslashes muss man escapen. Das sieht erstes sch**** aus und funktioniert afaik nicht überall.
Wenn du (wie du gesagt hast) nur eine Hand voll Klassen hast, dann bind doch einfach ein Ant-Build nach dem Compiler in Eclipse ein und lass das JAR automatisch zusammenpacken, müßte ja eigentlich schnell gehen.
Wenn du (wie du gesagt hast) nur eine Hand voll Klassen hast, dann bind doch einfach ein Ant-Build nach dem Compiler in Eclipse ein und lass das JAR automatisch zusammenpacken, müßte ja eigentlich schnell gehen.
Hab noch gar keine Ahnung von den ANTs, weil Eclipse so komplex ist, ist es schwierig zu ersehen, welche Funktion für was gut sein könnte. Aber solange die Handgriffe nicht allzu viele werden, suche ich meistens nicht nach Abkürzungen . Aber das mit den ANTs nach dem compile könnte praktisch sein, werd mal schauen...
Ich würde in Java immer Slashes verwenden, die gehen auf Unix, Linux, Windows und wahrscheinlich auch auf allen anderen Systemen. Die Backslashes muss man escapen. Das sieht erstes sch**** aus und funktioniert afaik nicht überall.
Ich würde in Java immer Slashes verwenden, die gehen auf Unix, Linux, Windows und wahrscheinlich auch auf allen anderen Systemen. Die Backslashes muss man escapen. Das sieht erstes sch**** aus und funktioniert afaik nicht überall.
Natürlich ist man mit FileSeparator auf der sicheren Seite, der Path-Separator ist allerdings falsch, das ist beispielsweise ein ';' zum trennen mehrerer Paths (wie der Name schon sagt).
Ich kann das nicht wirklich 100% belegen, aber IMHO funktioniert FileSeparator unter Win nur im "richtigen" Filesystem, nicht aber in JARs. IMHO ist der Pfad innerhalb eines JARs mehr so eine Art URL und da tut der Backslash nicht, den FileSeparator unter Win zurückliefert.
Habe damit jedenfalls negative Erfahrungen gemacht: Fileseparator ging nicht, sobald Ressourcen aus einem JAR geladen wurden, mit Slash ging's in beiden Fällen.