• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

[DEV]Selbstbau, png nicht gefunden - SOLVED

greiol

Geoguru
Ich hab gerade mal wieder versucht mir einem CacheWolf selber zu bauen und in eclipse läuft er auch noch. Versuche ich mit compile.sh buildexe.sh ein jar zu bauen beschwert er sich beim starten nach der profilauswahl
Code:
ewe.fx.ImageDecodingException: There was an error decoding the image: 2.png.
        at ewe.fx.Image.throwBadFormat(Image.java)
        at ewe.fx.Image.decodeFrom(Image.java)
        at ewe.fx.Image.decodeFrom(Image.java)
        at ewe.fx.Image.<init>(Image.java)
        at ewe.fx.Image.<init>(Image.java)
        at ewe.fx.mImage.<init>(mImage.java)
        at CacheWolf.FilterScreen.addImg(FilterScreen.java:80)
        at CacheWolf.FilterScreen.<init>(FilterScreen.java:164)
        at CacheWolf.MainMenu.<init>(MainMenu.java:39)
        at CacheWolf.MainForm.doIt(MainForm.java:107)
        at CacheWolf.MainForm.<init>(MainForm.java:38)
        at CacheWolf.CacheWolf.main(CacheWolf.java:70)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:616)
        at ewe.reflect.Method.invokeInThread(Method.java)
        at ewe.reflect.Method.nativeInvoke(Method.java)
        at ewe.reflect.Method.invoke(Method.java)
        at ewe.ui.mApp$1.run(mApp.java)
        at ewe.sys.Coroutine.run(Coroutine.java)
Exiting application due to exception thrown in main().
2.png ist im jar enthalten wird aber scheinbar nicht gefunden. ich hatte das schon mal, gebe aber zu die lösung verbummelt zu haben.

gestartet wurde mit
Code:
java -jar CacheWolf.jar

hat jemand einen tip (ausser alle pngs auspacken und ins verzeichnis legen)
 

pfeffer

Geowizard
vom richtigen Verzeichnis aus starten. Ich gkaub, die .jar muss so gestartet werden, dass die .jar im aktuellen Verzeichnis liegt.

Gruß,
Pfeffer.
 
OP
G

greiol

Geoguru
korrekter einwand. ich vergass zu erwähnen, dass ich das ganze mit
Code:
java -jar CacheWolf.jar
starte.

vielleicht versuche ich das doch mal mit dem sun jdk statt dem openjdk :???:
 

MiK

Geoguru
Das jar hat bei mir noch nie richtig funktioniert, wenn ich es selbst gebaut habe. Irgendwas läuft da mit meinem Sun JDK da anders als auf den Linux-Nightly-Builds-Kisten.

Edit: Sie funktionieren IMHO im work-Verzeichnis, wenn die entsprechenden PNGs direkt im Verzeichnis liegen. Aber das ist ja nicht Sinn der Sache, wenn die Datei auch im .jar ist.
 
OP
G

greiol

Geoguru
ja, der build prozess ist noch nicht ganz rund, aber eins nach dem anderen ;)
vor allem ärgert mich, dass ich es mal richtig hatte
 
OP
G

greiol

Geoguru
ok, einen schritt weiter :-\ jar tf auf das erzeugte jar geht auch nicht. mal sehen was da los ist
 
OP
G

greiol

Geoguru
ok, im jar sind nur bilder kaputt. aber auch nicht alle. ich versteh es im moment nicht wirklich
 

Harry1999

Geocacher
gibt es irgendeine Gemeinsamkeit aller nicht gefundenen bzw. gefundenen Bilder? z.B.
8.3 Namen, Sonderzeichen, alle Dateinamen groß, klein bzw. misch geschrieben, PNG's im besonderen Format... incl. alpha-Kanal 8bit 16bit 24bit...
 

vozzik

Geocacher
Also, ich habe mir gerade die Java Version von der Cachewolf Seite gezogen. Nach dem Starten und der Profilauswahl bekomme ich allerdings den gleichen Fehler, wie greiol. Benutze auch das openjdk.

Edit: Der Tipp von Pfeffer war Gold wert. Jetzt funktioniert es erstmal bei mir.
 
OP
G

greiol

Geoguru
Harry1999 schrieb:
gibt es irgendeine Gemeinsamkeit aller nicht gefundenen bzw. gefundenen Bilder? z.B.
8.3 Namen, Sonderzeichen, alle Dateinamen groß, klein bzw. misch geschrieben, PNG's im besonderen Format... incl. alpha-Kanal 8bit 16bit 24bit...
das ist das was ich im moment versuche heraus zu bekommen. mich würde auch interessieren wie genau eigentlich das jar aus der jnf datei erzeugt wird, denn ich vermute die ursache des fehlers beim einpacken.

der aktuelle würgaround besteht darin, dass ich alle bilder aus resources im jar aktualisieren lasse. dann funktioniert es auch, aber befriedigend ist das nicht.

es funktioniert auch, wenn ich die ganzen pngs aus dem resources verzeichnis in das verzeichnis mit dem jar kopiere, dann greift er auf die daten im filesystem zu. aber auch hier würde ich eher von einer krücke als einer lösung sprechen.
 
OP
G

greiol

Geoguru
vozzik schrieb:
Also, ich habe mir gerade die Java Version von der Cachewolf Seite gezogen. Nach dem Starten und der Profilauswahl bekomme ich allerdings den gleichen Fehler, wie greiol. Benutze auch das openjdk.

Edit: Der Tipp von Pfeffer war Gold wert. Jetzt funktioniert es erstmal bei mir.
vermutlich liegen in dem verzeichnis die ganzen bilder nochmal als einzelne files. aber wenn das die lösung sein soll, können wir das jar schlanker machen und die bilder ganz rauswerfen.
 
OP
G

greiol

Geoguru
sowohl die 1532 als auch die BE scheinen ok zu sein. mit einem umweg über
Code:
cd resources
touch *gif *.png
zip -u ../CacheWolf/Jar/CacheWolf.jar *.png *.gif
bekomme ich auch eine funktionierende version - und kann jede menge dateien im cachewolfverzeichnis löschen, weil er sie nun im archiv findet.

ich hab auch mal ein paar weitere JDKs bis runter zu 1.4.2 von sun probiert aber immer das selbe schlechte ergebnis.

ehrlich gesagt würden mich mal die tatsächlichen build scripte interssieren. ich kann mir irgendwie nicht so recht vorstellen, dass das alles sauber mit einem nackten checkout aus dem svn unter linux durchläuft.
 
OP
G

greiol

Geoguru
ich denke ich habe es gefunden. buildexe.sh baut leider keine funktionierenden jar dateien :motz: ich werde mir mal den gesammelten .sh kram ansehen und prüfen was davon funktioniert.
 

pfeffer

Geowizard
also, ich glaub, die Version, die auf cachewolf. de liegt, wurde noch mit freewrtsnapshot.sh gebaut.
Damit sollte es also gehen.

Gruß,
Pfeffer.
 
OP
G

greiol

Geoguru
jepp, das kann deutlich mehr. allerdings ist nicht alles was das script braucht im svn (und es ist mein hauptkandidat beim prüfen auf sh kompatibilität)
 
OP
G

greiol

Geoguru
nein, das ist nur eine lösung, extrem unelegant und es gibt besseres.

der hauptteil der lösung besteht daraus weder das alte compile.sh noch das alte buildexe.sh zu benutzen. :motz:

fwrtsnapshot.sh ist in der jetzigen form aber wenig benutzerfreundlich für einsteiger.

ich stelle nach und nach die tipps zum bauen / anpassen von CW unter linux in den doku baum im svn ein. einige dinge bedürfen aber noch der feinabstimmung. wenn das wetter so mies bleibt, könnte aber bis ende der woche ein rezept fertig sein.
 
Oben