[ tehno @ 03.03.2011. 10:42 ] @
Početnik sam sa Javom pa se izvinjavam ako je pitanje suviše prosto, ali iako sam surfovao po google nisam našao odgovor.

Napravio sam mali projekat u Eclipse-u, koji povezuje jrxml jasperreportsa sa Oracle bazom.

U projektu se koriste neki jar fajlovi za konekciju sa oracleom i za sam jasperreport.

Napravio sam novi direktorijum lib u okviru Eclipse projekta stavio te jar fajlove na njega i dodao ih u build - path Eclipse projekta.

Projekat u Eclipseu radi ono što sam i želeo, prikazuje mi jedan jrxml report. kroz Jasper viewer.

Kada sam pokrenuo eksport u jar uvrstio sam i taj direktorijum lib sa eksternim jar-ovima i on je eksportovan, kao i paket u kome je klasa sa main procedurom za prikazivanje jrxml-a.

Kada odem na direktorijum i pokrenem eksportovani jar fajl, on počne da se izvršava što vidim po nekim porukama koje sam stavio da se printuju na ekranu, ali
onda stvar pukne tj kaze:

Could not create the report oracle.jdbc.driver.Oracledriver

Jar Fajl pustam sa: java - jar Pokusaj15.jar iz komandne linije. U tom direktorijumu se nalazi i .classpath i .projekat.

Pretpostavljam da u jar fajlu iako ima direktorijum lib, procedura koja ga izvršava ne vidi jar-ove koji su u tom lib-u.

Čitao sam nešto o manifest fajlu, ali kada sam pokušao da ga promenim kroz notepad, kad ponovo pokušam eksport dobijam neku poruku da je invalid header.
Čitao sam i o ant build skripti, ali to još manje shvatam.

Kao što rekoh, početnik sam sa Javom pa bih molio iscrpnija uputstva i pojašnjenja.
[ tehno @ 04.03.2011. 07:15 ] @
Uf, nekako sam izguglao da je jar file isto što i zip samo što u META-INF folderu ima fajl MANIFEST.MF.

E sad, sa tim fajlom sam se zezao tri sata jer nisam znao da zadnji red mora biti potpuno prazan.

Bilo kako bilo sada mi je proradilo ono što sam želeo, jer sam takođe shvatio da u manifest fajlu postoji relativna putanja na eksterne jar-ove
i da to što sam direktorijum lib spakovao u isti jar koji sam hteo da bude i izvršni je u stvari samo arhivski.

Ipak mi nije dosta toga jasno: Pošto je u istom direktorijumu bio i .classpath zar u on nije bio dovoljan da ukaže na relativne putanje pri puštanju iz komndne linije, zašto mu je bio neophodan prepravljen manifest fajl ?
Postoji li neki pametniji način da se kroz eclipse menja manifest fajl, odnosno da se on automatski generiše sa eksternim jar-ovima, ili to mora praktično ručno ?

Takođe mi i dalje nije jasno kako radi i šta je and i kako se pravi ant skript file i čemu služi.
[ tehno @ 04.03.2011. 11:45 ] @
Napredujem, sada tek vidim da taj .classpath file nije onaj classpath iz komandne linije, pa pretpostavljam da je
on neki fajl vezan za sam eclipse.

Ipak bih voleo da mi neko nešto više napiše o antu i o pakovanju-exportu u jar preko eclipse-a, tj ima li
neki lakši način od prepravljanja manifest fajla.
[ biske86 @ 04.03.2011. 13:41 ] @
Ne znam da li može izmena .jar fajla iz eklipse ali sigurno može generisanje istog u dva tri koraka..
Evo pogledaj na ovom linku imaš kako da uradiš preko konzole i preko eklipse .jar fajl.
http://viralpatel.net/blogs/20...-jar-file-in-java-eclipse.html