Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    Problema creazione Jar

    Salve a tutti e buon anno.
    Sto cercando di creare un file jar. Il main si trova nel file "connectui.class"
    Compilando connectui.java ottengo la classe main suddetta, connectui$1.class connectui$2.class connectui$SimpleRunner.class.

    Poi ho creato il file Manifest


    codice:
    Manifest-Version: 1.0 
    Main-Class: connectui.class
    Provo a creare il file jar con

    codice:
    jar cvf connectui.jar connectui.class connectui/$*
    L'output del terminale dice di aver aggiunto il file manifest e completa la creazione.
    Quando eseguo però con

    java -jar connectui.jar Mi dà errore "Failed to load Main-Class manifest attribute from connectui.jar"

    Come posso risolvere?

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Nel manifest "connectui.class" cosa indica?
    -sta ad indicare la classe "class" dentro la directory "connectui"?Allora ok
    -sta ad indicare il nome del file "class" (compreso quindi di estensione ".class") ?? allora scrivi soltanto il nome del file senza l'estensione ".class"
    Sempre nel manifest hai lasciato (almeno) una riga vuota alla fine di esso??

  3. #3
    Ho cambiato il Manifest togliendo l'estensione .class perchè mi riferivo al file e aggiungendo qualche righa vuota alla fine ma non è cambiato niente.

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Dentro al JAR non ci devi mettere solo il file "connectui.class", ma anche tutti gli altri file .class generati dalla compilazione (quindi, anche i file connectui$1.class, connectui$2.class e connectui$SimpleRunner.class), altrimenti l'applicazione non funzionerà mai.
    Inoltre, se sono previste librerie esterne che l'applicazione necessita, devono anch'esse essere dichiarate nel file MANIFEST.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Ho provato ma continua a darmi l'errore.
    "Failed to load Main-Class manifest attribute from
    app.jar"

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da rossirule2012
    Ho provato ma continua a darmi l'errore.
    "Failed to load Main-Class manifest attribute from
    app.jar"
    1) Assicurati che il file MANIFEST sia effettivamente stato incluso del JAR (puoi aprire i file JAR con un qualunque programma per il trattamento dei file ZIP, essendo a tutti gli effetti un file ZIP con estensione modificata)

    2) Posta il contenuto del file MANIFEST.MF, così com'è, con le correzioni eventualmente apportate.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Il file Manifest.mf contiene

    codice:
    Manifest-Version: 1.0 
    Created-By: 1.6.0_20 (Sun Microsystems Inc.)
    /////<--Spazio Vutoto

  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Mi sembra evidente che quel file manifest non è quello che hai creato tu o, quantomento, non contiene alcuna indicazione di quale sia la Main-Class da avviare...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  9. #9
    Si mi sono dimenticato di scrivere Main-Class: connectui, ma il risultato anche con le correzioni è sempre lo stesso.

  10. #10
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Originariamente inviato da rossirule2012
    Si mi sono dimenticato di scrivere Main-Class: connectui, ma il risultato anche con le correzioni è sempre lo stesso.
    Posta il contenuto preciso del file MANIFEST.MF e, per controllare per bene, anche i nomi di tutti i files contenuti dentro al JAR (senza dimenticare i nomi delle directory).

    PS: se hai la possibilità, prova a caricare il file JAR in un servizio di file-hosting in modo da poterlo eventualmente scaricare e controllare.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.