PDA

Visualizza la versione completa : problema creazione .jar


franciccia82
10-04-2005, 15:17
Ciao!!
Ho un problema: dovrei creare un file .jar in modo che l'applicazione da me creata si possa eseguire direttamente digitando da linea di comando java -jar nomefile.jar.
Il fatto che ho provato a creare il file.jar,ma quando da riga di comando provo ad eseguirlo, nn parte e anzi mi da errore sul manifest...da cosa dipende??E soprattutto come posso risolvere??
Ci potreste spiegare passo passo cosa fare x farla funzionare??
grazie... :dh:

dekdek
10-04-2005, 15:35
Beh, posta il file manifest...

franciccia82
10-04-2005, 15:55
Che ci devo fare co sto file Manifest??
Qua nn ci parte niente!!!!Please....aiutoooooo :cry:

dekdek
10-04-2005, 16:43
Che ci devo fare co sto file Manifest??

Scriverlo...
Nel manifest c'e' scritto quale e' la main class (anche altre cose...)

E' una delle cose che di solito delego a NetBeans.
Cmq, procedi come segue:

Crea un file MANIFEST.TXT che contiene una sola riga

Main-Class: MioPackage.MiaClasseMain

(sostituisci MiaClasse con la tua classe...)

Assicurati di andare a capo alla fine della riga!!!

Poi crei il jar aggiungendo l'opzione m:

jar cmf MANIFEST.TXT MioFileJar.jar MieClassi....

I dettagli qui:
http://java.sun.com/docs/books/tutorial/jar/manifest/appman.html

franciccia82
10-04-2005, 17:14
Abbiamo provato ma ci da errore:

java.io.Exception: invalid header field
at java.util.jar.Attributes.read<Attribytes.java:393>
at java.util.jar.Manifest.read<Manifest.java:167>
at java.util.jar.Manifest.<init><Manifest.java:52>
at sun.tools.jar.Main.run<Main.java:123>
at sun.tools.jar.Main.main<Main.java:903>

che cosa significa??
grazie... :ciauz:

dekdek
10-04-2005, 17:42
Sbagliato qualcosa io. O tu. O entrambi...

franciccia82
10-04-2005, 17:50
E quindi??
NN mi puoi aiutare?? :cry:

dekdek
10-04-2005, 18:11
Non so.
Prova in quest'altro modo.
Crea il JAR normalmente.
Crea il manifest sempre con la sola riga



Main-Class: MiaClasseMain


(assicurati che la M e la C siano maiuscole e ci sia il trattino e tutto il resto, compreso l'INVIO a fine riga)

E poi esegui l'update:

jar ufm MyArchive.jar manifest.txt

franciccia82
10-04-2005, 18:57
potrebbe essere che sbagliamo noi a fare il file.jar??
Dentro il .jar ci deve stare sia il file Manifest che i .class della nostra applicazione??
:confused:

dekdek
10-04-2005, 19:19
Si'. In genere il Manifest si trova in una cartella chiamata META-INF.

P.S. Un file JAR e' un file ZIP con l'estensione cambiata.
Prova a rinominarlo e ad aprirlo con WinZip. Poi prova a cercare il Manifest, se c'e', e ad estrarlo per verificarne il contenuto.

Loading