Avatar billede riversen Nybegynder
21. december 2002 - 19:40 Der er 5 kommentarer og
1 løsning

Billeder bliver ikke vist når jeg laver jar fil

Jeg har sat et icon på en knap

i koden angiver jeg stien "img/1.gif"
hvor img biblioteket er placeret ude i roden af projektet i forhold til class filerne.

Men når jeg pakker det i en jar fil, bliver billedet ikke vist...hvorfor? Strukturen er den samme.

hvis pakkerne hedder com.<etellerandet> så ligger img biblioteket i samme bibliotek som com...altså på samme niveau.

d:\test\com
d:\test\img

håber det er gjort klart hvad jeg mener.
Avatar billede riversen Nybegynder
21. december 2002 - 19:44 #1
det samme hvis jeg kører programmet sådan her

java -classpath d:\test com.ProgramFrame ... heller ingen billeder
Avatar billede arne_v Ekspert
21. december 2002 - 19:46 #2
Prøv med:

ImageIcon img = new ImageIcon(getClass().getClassLoader().getResource("img/1.gif"));
Avatar billede arne_v Ekspert
21. december 2002 - 19:48 #3
Jeg vil iøvrigt tro at:
  java -classpath d:\test com.ProgramFrame
virker hvis du står i d:\test men fejler hvis
du står i alle andre directories.
Avatar billede riversen Nybegynder
21. december 2002 - 19:50 #4
ja...det virker...hvorfor nu det?
hvorfor virker det andet ikke?
Avatar billede arne_v Ekspert
21. december 2002 - 19:53 #5
Når du skriver new ImageIcon("img\1.gif"), så leder den efter
img\1.gif relativt i forhold til dit nuværende directory.

Det går ikke hvis filen ligger i en jar-fil eller hvis
du står i et forkert directory.

getResource bruger samme logik som der bruges når
der loades class-filer. D.v.s. at den kan håndtere jar-filer
og den bruger classpath informationen og kan derfor bruges
i alle directories.
Avatar billede riversen Nybegynder
21. december 2002 - 19:55 #6
ok...så lærte jeg sq også noget i dag :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester