Avatar billede learnmejava Nybegynder
11. december 2002 - 00:48 Der er 17 kommentarer og
1 løsning

Jar / exe

Hejsa
Jeg har lavet et lille program i BlueJ. Nu skal jeg så have det lagt ellers anden for for "exe" fil.
jeg kan godt pakke det i en jar fil. men så kan det ikke finde min MySql DB og alle grafikfilerne. Hvordan gør man dette?
DB ligger på en extern server
alle grafikfiler ligger lokalt
Avatar billede learnmejava Nybegynder
11. december 2002 - 00:49 #1
Hejsa
Jeg har lavet et lille program i BlueJ. Nu skal jeg så have det lagt en eller anden form for "exe" fil.
jeg kan godt pakke det i en jar fil. men så kan det ikke finde min MySql DB og alle grafikfilerne. Hvordan gør man dette?

DB ligger på en extern server
alle grafikfiler ligger lokalt
Avatar billede arne_v Ekspert
11. december 2002 - 07:48 #2
En jar-fil er en exe-fil i Java verdenen.

Dine grafik-filer kan du pakke med ned i jar-filen.

Din MySQL database skal der connectes til over netværket
under alle omstændigheder.
Avatar billede r9 Nybegynder
11. december 2002 - 08:43 #3
du skal huske at pakke "mySql driveren" med ned i din JAR fil.
Avatar billede arne_v Ekspert
11. december 2002 - 09:47 #4
Jeg vil ikke betragte det normalt at pakke
en JDBC driver ned i sin applikations jar-fil.

Man distribuerer de to jar-filer sammen og får
classpathen sat til at indeholde den anden jar-fil.

(man kan naturligvis godt pakke en JDBC driver
jar-fil ned i en war-fil, men det er noget helt
andet)
Avatar billede learnmejava Nybegynder
11. december 2002 - 10:59 #5
Okay.
Lige 2 spørgsmål...

1) Hvordan laver jeg mine stier til graffikfilerne relative? Nu er de bare fx.

billede = new ImageIcon("C:/Documents and Settings/Administrator/BlueJ/baggrund.jpg");

2) Hvordan pakker jeg MySQL driveren med?
Avatar billede arne_v Ekspert
11. december 2002 - 11:12 #6
re 1)

Jeg har set følgende brugt:

ImageIcon billede = new ImageIcon(new URL(getCodeBase(),"baggrund.jpg"));

hvis den ligger i roden af din jar-fil.
Avatar billede arne_v Ekspert
11. december 2002 - 11:15 #7
re 2)

Distribuer din jar fil og MySQL JDBC driver jar filen
som 2 selvstenændige filer.

Og enten:
  - instruer brugeren i at sætte classpath til at bruge begge
  - sæt en classpath i manifest headeren i din jar fil
Avatar billede learnmejava Nybegynder
11. december 2002 - 14:06 #8
Når jeg bruger getCodeBase-metoden, får jeg en "cannot resolve symbol" fejl. Mangler jeg muligvis at importere et bibliotek, og i så fald hvilket?
Avatar billede arne_v Ekspert
11. december 2002 - 14:13 #9
Min fejl. getCodeBase findes i applets og jeg troede
at du havde en applet.
Avatar billede arne_v Ekspert
11. december 2002 - 14:17 #10
Så skal du nok prøve med:

ImageIcon billede = new ImageIcon(getResource("/images/baggrund.jpg"));

Den bør lede efter baggrund.jpg i din
jar-fil i images "directory".
Avatar billede learnmejava Nybegynder
11. december 2002 - 18:00 #11
Får desværre stadig en "cannot resolve symbol". Skal man importere et specielt bibliotek?
..Og tak for tålmodigheden :o)
Avatar billede arne_v Ekspert
11. december 2002 - 18:08 #12
Virker:

ImageIcon billede = new ImageIcon(getClass().getResource("/images/baggrund.jpg"));

?
Avatar billede arne_v Ekspert
11. december 2002 - 18:16 #13
Og vi fortsætter da til det virker !
Avatar billede learnmejava Nybegynder
11. december 2002 - 19:56 #14
Optur.. den virkede. Tak skal du have.
Jeg har stadig problemer med databasen, men du får da lige halvdelen af pointene. Vender tilbage til DB'en senere
Avatar billede learnmejava Nybegynder
11. december 2002 - 19:58 #15
Nå.. du fik hele skidtet :o)
Avatar billede arne_v Ekspert
11. december 2002 - 19:58 #16
Det er godt at det virker.

Og unskyld at jeg fumlede lidt rundt i det. GUI er ikke lige min
hjemmebane.
Avatar billede learnmejava Nybegynder
11. december 2002 - 20:07 #17
Lige et spørgsmål på falderebet.. hvis man laver to jar filer. En med applikationen og en med DB-driveren. Hvad er syntaxen så, for det man skriver i manifest-filen?
Avatar billede arne_v Ekspert
11. december 2002 - 20:11 #18
Class-Path: xyz.jar

Se:
http://java.sun.com/docs/books/tutorial/jar/basics/manifest.html
afsnit "Download Extensions".
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