Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

JAR file i mySQL Classpath ?

[es] :: Java :: JAR file i mySQL Classpath ?

[ Pregleda: 3969 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Cyberghost
Aleksandar Jovanović
Programer
S U M A D I J A

Član broj: 14674
Poruke: 813
91.150.76.*



+1 Profil

icon JAR file i mySQL Classpath ?24.07.2007. u 10:10 - pre 203 meseci
Projekat j radjen u Eclipse 3.2, uvezen je JAR za JConnector i kada pokrenem aplikaciju iz Eclipse konekcija na bazu radi bez problema.
Uradim Export u JAR file, pokrenem program, sve opcije rade ali ne radi konekcija na bazu ?
Neke kolege su mi rekle da se i njima ovo desavalo i da nisu uspeli da rese problem!
Every program is either trivial or it contains at least one bug.
 
Odgovor na temu

Cyberghost
Aleksandar Jovanović
Programer
S U M A D I J A

Član broj: 14674
Poruke: 813
*.com
Via: [es] mailing liste



+1 Profil

icon Re: JAR file i mySQL Classpath ?24.07.2007. u 10:30 - pre 203 meseci
>
Problem sam resio donekle, menjanjem opcija za Export, ali je problem
sto sam u JAR fajlu dobio kompletnu strukturu projekta sa Source fajlovima !
Every program is either trivial or it contains at least one bug.
 
Odgovor na temu

bgd2500

Član broj: 55912
Poruke: 226
*.finsoft.co.yu.



+7 Profil

icon Re: JAR file i mySQL Classpath ?24.07.2007. u 12:29 - pre 203 meseci
U opcijama za Export mozes da selektujes/deselektujes sta zelis, pa izbaci source direktorijum.
 
Odgovor na temu

Cyberghost
Aleksandar Jovanović
Programer
S U M A D I J A

Član broj: 14674
Poruke: 813
*.com
Via: [es] mailing liste



+1 Profil

icon Re: JAR file i mySQL Classpath ?24.07.2007. u 13:15 - pre 203 meseci
To sam vec uradio ali da bi napravio JAR Eclipse trazi da mu ubacim main
Class. Iz liste izbacim sve Source fajlove osim main Class-e,
buildovanje prodje bez problema,
ali kada uvezem taj JAR fajl u Eclipse ponovo su svi Source fajlovi tu
iako ih nisam selekotovao na pocetku !!!


Every program is either trivial or it contains at least one bug.
 
Odgovor na temu

bgd2500

Član broj: 55912
Poruke: 226
*.finsoft.co.yu.



+7 Profil

icon Re: JAR file i mySQL Classpath ?24.07.2007. u 14:50 - pre 203 meseci
Nemam trenutno Eclipse 3.2 pri ruci pa ne mogu da probam, u 3.1 Export radi korektno.
Ako nece drugacije, udji u arhivu pa izbrisi "peske" source fajlove.

Ja obicno arhivu pravim iz ant skripta.
 
Odgovor na temu

rj444
Radomir Jakovljevic
Beograd

Član broj: 48212
Poruke: 354
89.98.150.*



Profil

icon Re: JAR file i mySQL Classpath ?24.07.2007. u 20:30 - pre 203 meseci
Da bi ti konekcija na bazu radila i posle deployment-a aplikacije, drajver za bazu mora biti dostupan u classpath-u. jar fajl konektora koji si uvezao u eclipse treba da stavis u classpath.

Po meni najelegantniji nacina da to uradis je da u manifest fajl upises ovo:
Code:
Manifest-Version: 1.0
Class-Path: relativnaPutanjaDoKonektora/Connector.jar
Main-Class: paket.podepaket.GlavnaKlasa


Napominjem da ova relativna putanja do konektor jar fajla se racuna u odnosu na jar fajl u kom se nalazi manifest fajl. Takodje ne treba Connector.jar pakovati unutar Aplikacija.jar ni kao jar fajl ni same klase i pakete iz njega (vidim da si ti to uradio) jer je ovo sto pisem pravi nacin (onako kako je to zamisljeno kada su napravljene jar arhive).

Vrlo bitno je da se tag Main-Class postavi na kraj manifesta i da imas bar jednu praznu liniju ispod njega.

Npr. neka je aplikacija spakovana u Aplikacija.jar fajl, a konektor u Connector.jar i nalazi se u lib direktorijumu, koji se sam nalazi u istom direktorijumu kao i Aplikacija.jar. Neka je glavna klasa koja se pokrece u paketu app i zove se Aplikacija. U Ovom slucaju manifest fajl izgleda bas ovako:
Code:
Manifest-Version: 1.0
Class-Path: lib/Connector.jar
Main-Class: app.Aplikacija
<prazan red!!!>


Ako ovako napravis jar fajl onda ce aplikacija moci da se pokrene dvoklikom na njega ili prostim pozivom iz konzole (bat fajla) pomocu:
Code:
java -jar Aplikacija.jar


Sve ovo mozes da uradis direktno iz eclipse-a, samo je potrebno da napises manifest fajl i da pri export-u u jar izaberes opciju da koristi tvoj manifest fajl. Naravno da bi ga eclipse video ubaci ga negde u projekat.

Sto se tice problema sa Source fajlovima, obrisi jar fajl pa sve ispocetka, mora da radi. Inace kako rece bgd2500 otvori arhivu winrar-om i izbaci ono sto ti ne treba.

Takodje, mislim da bi trebao da probas da cekiras opciju: "Export All Output Folders For Checked Projects" umesto prve (kao na slici). Ja koristim razdvojene foldere za source fajlove (src) i za class fajlove (bin) tako da sa cekiranom 2. opcijom sve radi besprekorno.

Pozdrav,
Rade
 
Odgovor na temu

Cyberghost
Aleksandar Jovanović
Programer
S U M A D I J A

Član broj: 14674
Poruke: 813
*.com
Via: [es] mailing liste



+1 Profil

icon Re: JAR file i mySQL Classpath ?24.07.2007. u 21:34 - pre 203 meseci
Druze sve ovo sam namestio kako si napisao, cak sam razdvojio Source i
Class fajlove, ali problem je sada mi ne radi konekcija na bazu ni iz Eclipse:

Stari code:
Code:
 Class.forName("com.mysql.jdbc.Driver");

sada treba verovatno da se izmeni, probao sam ovako

Code:
 Class.forName("lib/Connector.jar");

opet ne radi ?

Struktura direktorijuma je ovakva:



u /lib direktorijumu se nalazi file Connector.jar (kopija originala: mysql-connector-java-5.0.6-bin.jar)

Pomagaj !

[Ovu poruku je menjao Cyberghost dana 24.07.2007. u 22:55 GMT+1]
Every program is either trivial or it contains at least one bug.
 
Odgovor na temu

Cyberghost
Aleksandar Jovanović
Programer
S U M A D I J A

Član broj: 14674
Poruke: 813
91.150.76.*



+1 Profil

icon Re: JAR file i mySQL Classpath ?24.07.2007. u 22:18 - pre 203 meseci
Evo koraka kojih sam se pridrzavao:

1. Nov projakat: Diplomski
2. Source fajlovi idu u folder "src"
3. Class fajlovi idu u folder "bin"
4. Napravio direktorijum "lib" u okviru project direktorijuma
5. U folder "lib" prekopirao fajl Connector.jar
6. Napravio manifest.txt fajl sa sadrzajem:
Code:
Manifest-Version: 1.0
Class-Path: lib/Connector.jar
Main-Class: Code.Start
<ovo je prazna linija>

7. Uradio Export u JAR file i podesio da koristi moj manifest file

Problem 1: deployment je prosao, ali konekcija na bazu ne radi, sta vise konekcija na
bazu ne radi ni kada projekat pokrenem iz Eclipse!

Za pristuop bazi koristim class-u DBConnect (predpostavka je da je tu greska), isecak sledi:

Code:
 
      Class.forName("com.mysql.jdbc.Driver");
           
      String url = "jdbc:mysql://localhost:3306/aero";
      Connection con = DriverManager.getConnection(url,"root", "123456");


Greska: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
Every program is either trivial or it contains at least one bug.
 
Odgovor na temu

rj444
Radomir Jakovljevic
Beograd

Član broj: 48212
Poruke: 354
*.ehv.campus.philips.com.



Profil

icon Re: JAR file i mySQL Classpath ?26.07.2007. u 16:08 - pre 203 meseci
Vrati sve kako je bilo kada je radilo iz eclipse-a. To treba tako da bude. Jedino mozes da ostavis src i bin foldere (to se takodje podesava u eclipse-u, a ne pravis rucno nista). Kada pokreces aplikaciju iz eclipse-a ne treba da kopiras u projekat Connector.jar vec samo da ga ubacis u build-path.

Sve ono sto sam ti pisao se odnosi na slucaj kada aplikaciju zelis da pokrenes van eclipse-a. Tada imas (u folderu lib) Connector.jar u kome se nalazi Driver klasa, Aplikacija.jar u kome se nalazi tvoj program koji samo KORISTI Driver klasu. U Aplikacija.jar se nalazi manifest sa sadrzajem koji si gore naveo (to eclipse ubaci tamo) + svi tvoji class fajlovi u okviru strukture foldera koja zavisi od naziva paketa tvog programa.

Ova dva jar fajla iskopiras recimo u folder program, tako da je struktura foldera program sledeca:

-Program sadrzi folder lib, Aplikacija.jar i pokreni.bat
-Lib sadrzi Connector.jar

Fajl pokreni.bat treba da ima samo komandu: java -jar Aplikacija.jar

Nista vise nije potrebno. Dvoklik na pokreni.bat treba da pokrene aplikaciju.


Napomena: Sada ti javlja gresku: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver, sto znaci da ne moze da nadje tu klasu. Okaci ovde manifest fajl da vidim kako izgleda konkretno.

Pozdrav,
Rade
 
Odgovor na temu

Cyberghost
Aleksandar Jovanović
Programer
S U M A D I J A

Član broj: 14674
Poruke: 813
*.com
Via: [es] mailing liste



+1 Profil

icon Re: JAR file i mySQL Classpath ?26.07.2007. u 20:02 - pre 203 meseci
>
Pa to brate mili, sad radi sve kako treba, stim sto ja ne koristim .bat
file nego pokrecem direktno Aplikacija.jar (a kada zavrsim aplikaciju
onda pravim .exe sa exe4j aplikacijom).

Veliki pozdrav i hvala
Every program is either trivial or it contains at least one bug.
 
Odgovor na temu

dragan_bg_88
Dragan Slaveski
Beograd

Član broj: 68739
Poruke: 288
*.dynamic.sbb.co.yu.



Profil

icon Re: JAR file i mySQL Classpath ?27.09.2007. u 19:10 - pre 201 meseci
E ljudi, ovako, ja sam napravio applikaciju koja se zove Vezbe.jar. U njoj se otvara klasa Main.class koja zatim poziva klasu Proba.class koja treba da mi prikaze formu na ekranu. Napravio sam folder program koji u sebi ima Vezbe.jar, folder lib i manifest.mf fajl. Folder lib sadrzi Connector.jar. Manifest.mf ima sledeci sadrzaj:
Code:

Manifest-Version: 1.0
Class-Path: lib/Connector.jar
Main-Class: Vezbe
<prazan red!!!>

Ali ovo nece da radi, uopste nece da pokrene Vezbe.jar. Mislim on ga pokrece ali ne prikazuje nista, ali kada ga probam u JStudiu onda radi. Problem je sigurno do manifest-a, gde sam pogresio? Da li treba kod Main-Class: da ide neki paket? Mada mi se Vezbe.jar ne nalazi ni u jednom paketu?
Izbacuje mi error: Faild to load Main-Class manifest attribute from D:\Program\Vezbe.jar

Sta ne valja?
 
Odgovor na temu

dragan_bg_88
Dragan Slaveski
Beograd

Član broj: 68739
Poruke: 288
*.dynamic.sbb.co.yu.



Profil

icon Re: JAR file i mySQL Classpath ?30.09.2007. u 21:51 - pre 201 meseci
Zar je moguce da niko nece da pomogne???
 
Odgovor na temu

bgd2500

Član broj: 55912
Poruke: 226
*.adsl-1.sezampro.yu.



+7 Profil

icon Re: JAR file i mySQL Classpath ?01.10.2007. u 01:21 - pre 201 meseci
Prikazi celokupnu strukturu jar fajla ili ga okaci negde pa daj link.
 
Odgovor na temu

rj444
Radomir Jakovljevic
Beograd

Član broj: 48212
Poruke: 354
*.ehv.campus.philips.com.



Profil

icon Re: JAR file i mySQL Classpath ?01.10.2007. u 11:30 - pre 201 meseci
1. U Main-Class tagu u manifest fajlu treba da stoji ime klase koja u sebi ima: public static void main(string[] args) metodu. Nije mi bas jasno da li ti imas klasu Vezbe koja poziva Main.class ili samo Main.class.

2. Manifest fajl ne treba da bude u folderu sa jar fajlom aplikacije, vec u samom jar fajlu. Unutar jar fajla ima nekakv folder META-INF (ili tako nesto) u kom treba da je manifest fajl. Eclipse sam kopira manifest fajl u jar, a ako ti kreiras jar iz nekog drugog IDE okruzenja onda to mozda nije slucaj.

Znaci: Budi siguran da sadrzaj Main-Class tag-a ukazuje na klasu koja treba prva da se pozove pri pokretanju programa i koja ima main metodu, a zatim manifest fajl kopiraj u Vezbe.jar\META-INF. Onda mora da radi.

Pozdrav,
Rade
 
Odgovor na temu

[es] :: Java :: JAR file i mySQL Classpath ?

[ Pregleda: 3969 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.