View Full Version : far funzionare un *.jar senza aggiungere a jvm i pachetti mail.jar e activation.jar
~{Blackangel}~ UT
30-05-2004, 16:08
come specificato dal titolo questo è il mio problema...
nn posso far girare il mio jar su una makkina dove la jvm nn ha installati i pachetti mail.jar e activation.jar come si puo fare?
se do il mio programma a un amico x fargli vedere quanto sono bravo costui dovrebbe x forza aggiornare il suo jvm aggiungendo quei due file? help me! :muro: :mc: :mc: :mc:
potresti unire i due jar insieme al tuo programma e distribuire un jar unico ma la dimensione sara' comunque quella della somma dei singoli jar, inoltre non so se e' consentito a livello di licenza delle librerie.
La cosa migliore e' che gli passi anche le librerie e gliele fai copiare nelle dir opportune.
~{Blackangel}~ UT
30-05-2004, 16:44
cmq sia per solo scopo informativo come si fa a unire + jar in un unico?
scompatti il contenuto di ogni jar nella directory corrente:
jar xf nome_file.jar
e poi ricrei un file unico con:
jar cf nome_file directory1 directory2 directory3
~{Blackangel}~ UT
31-05-2004, 11:03
provando a fare come dici tu jvm mi dice che e incorretto il file manifest.mf e quindi l'applicazione si ferma li:cry:
Originariamente inviato da ~{Blackangel}~ UT
provando a fare come dici tu jvm mi dice che e incorretto il file manifest.mf e quindi l'applicazione si ferma li:cry:
cancella quello che ti ha estratto prima di ricreare il jar.
N.B. stai facendo una schifezza io ti ho avvisato :p :p
Se le classi che usi del package mail e activation sono poche, puoi pensare di includere solo i relativi .class insieme alla tua applicazione.
Faccio un esempio: a te serve la classe com/sun/mail/pop3/Response.class contenuta nl package mail.jar
ti ricrei fra i lib della tua applicazione la struttura com/sun/mail/pop3/ e ci metti il file Response.class estratto dal jar...
Ti ricordo infatti che un jar non è altro che un archivio di .class.
Originariamente inviato da cn73
Se le classi che usi del package mail e activation sono poche, puoi pensare di includere solo i relativi .class insieme alla tua applicazione.
detto così mi sembra la fiera del NoClassDefFoundError... ;)
magari di classe gliene serve solo una ma con le dipendenze ha bisogno di 3/4 del jar.
Ovvio, bisogna tenere conto delle dipendenze... ma il non portarsi dietro dei jar pesanti può essere un bel incentivo a sbattersi un po'...
~{Blackangel}~ UT
02-06-2004, 17:31
provo provo:D
~{Blackangel}~ UT
03-06-2004, 21:13
nn ci riesco ora vi dico come sto facendo:
jar xf mail.jar
mi crea tre cartelle chiamate: com javax meta-inf le copio e le metto in una cartella apposta chiamata mail
poi vado a scomporre activation che mi crea le stesse cartelle...
taglia -incolla in una nuova directory
poi faccio lostesso con il mio programmino jar xf jaja.jar e mi crea la cartella regamail con all'interno il file jaja.class e la cartella meta-inf contenente il file manifest...
allora che faccio vado nella cartella regamail e li copio le seguenti cartelle: com e javax di mail e com e javax di activation mettendo solo i file *.class necessari x la mia aplicazione poi se creo il fil jar
jar cf lolo.jar regamail mi dice che il file manifest nn ce
jar mcf Manifest.mf lolo.jar regamail nn trova il file jaja.class
nn so piu ke pesci prendere :mc:
ditemi la giusta combinazione di passaggi che sto a impazzire :muro:
da DENTRO la cartella dove hai scompattato tutto e dove hai messo la tua classe
jar cf tuo_jar.jar javax tua_class.class
cancella prima i meta-inf
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.