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

    jar eseguibile da doppio click

    Salve, ho appena finito una piccola applicazione che vorrei far testare ad un amico che non ha dimestichezza col pc... e pertanto vorrei dargli il file .jar eseguibile con un doppio click su di esso.
    Premetto che ho guardato nel forum e dalle due discussioni vecchie che ho letto si parla di EXE... IO non voglio un .exe... voglio un file .jar che col doppio click si avvi (è una finestra).
    Il problema è che non so perchè o percome... ma al doppio click non succede niente... chi sa dirmi come si fa?...
    Grazie anticipatamente

    il lupo perde il pelo ma non il vizio!
    http://www.pateam.eu
    http://pateam.altervista.org

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da miticogilles Visualizza il messaggio
    Il problema è che non so perchè o percome... ma al doppio click non succede niente... chi sa dirmi come si fa?...
    Le questioni sono (almeno) 3:

    - Affinché un jar sia "eseguibile" (con doppio-click se gestito/configurato nel S.O.) o con il comando java -jar xyz.jar, all'interno del jar dentro il "manifest" ci deve essere l'attributo Main-Class che indica il nome completamente qualificato della classe che ha il main().

    - Il sistema deve essere configurato per lanciare la JVM al doppio-click sul jar. Su Windows la installazione di un JRE imposta di default l'associazione nel registry tra .jar e il comando "......path.....\bin\javaw.exe" -jar "%1" %*
    Tale associazione a volte può venire "fregata" da altre applicazioni.

    - Su Windows l'associazione lancia javaw che è il launcher della JVM senza console. Questo vuol dire che ha senso fare doppio-click solo per applicazioni Java GUI, cioè con interfaccia grafica (non per console).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    442
    Ovviamente il tuo amico deve avere installato il JRE altrimenti non potrà mai usare il tuo jar :-)

  4. #4
    Premetto che ho file .jar autoeseguibili che funzionan e che il mio amico ha installato tutto ciò che serve. ... a me piacerebbe sapere la procedura esatta per crearli... in quanto probabilmente sto commettendo un errore nel modo di fare.
    Possibilmente passo a passo.
    Grazie di nuovo

    il lupo perde il pelo ma non il vizio!
    http://www.pateam.eu
    http://pateam.altervista.org

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da miticogilles Visualizza il messaggio
    a me piacerebbe sapere la procedura esatta per crearli...
    Dipende se intendi usare "a mano" il tool 'jar' del JDK, se vuoi farlo da un IDE (e quale) o se con un tool di build (es. Ant o Maven).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  6. #6
    Intendo farlo manualmente utilizzando jar, blocco note per il manifest, e il prompt di dos.

    Ho visto che con eclipse esiste la possibilità di crearli in automatico ma vorrei capire come farli manualmente.
    Grazie per la pazienza Andbin

    il lupo perde il pelo ma non il vizio!
    http://www.pateam.eu
    http://pateam.altervista.org

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da miticogilles Visualizza il messaggio
    Intendo farlo manualmente utilizzando jar, blocco note per il manifest, e il prompt di dos.
    Con un editor di testo (es. blocco note), crei un file di testo con nome es. manifest.txt (il nome non è poi importante) che contiene:

    codice:
    Main-Class: nome.qualificato.classe.con.main
    Al fondo del file ci deve essere una riga vuota, il tool jar è pignolo su questo. Alcuni editor potrebbero non permettere o eliminare una riga vuota al fondo.

    Poi da prompt dei comandi ti posizioni come directory corrente dove hai i file .class o comunque dove c'è il/i package "radice" (se avessi un package com.example, devi metterti nella directory che contiene la directory "com").

    Quindi:

    jar cvmf manifest.txt nome.jar ....elenco-di-file-o-directory....

    oppure

    jar cvfm nome.jar manifest.txt ....elenco-di-file-o-directory....

    Nota l'ordine di 'f' e 'm' rispetto al nome file jar e manifest, questo è importante.

    Per altri dubbi, c'è la documentazione ufficiale: http://docs.oracle.com/javase/7/docs...ndows/jar.html (per Windows).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  8. #8
    Sono interessato alla questione. Fino a poco tempo fa sono riuscito a creare dei jar eseguibili tramite eclipse senza alcuna difficoltà tramite export --> runnable jar file, fine. Ora la procedura in questione non va più (non si sa perché) e genera dei jar che non si eseguono. Ho provato ad eseguire il jar dal prompt digitando:

    java -jar nomeprogramma.jar

    Ed ottengo un NullPointerException riferito alle immagini presenti nell'applicazione...

  9. #9
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Javino89 Visualizza il messaggio
    Ed ottengo un NullPointerException riferito alle immagini presenti nell'applicazione...
    Questo riguarda innanzitutto il modo in cui le immagini sono specificate (referenziate) e caricate dalla applicazione. Se l'approccio è corretto, chiaramente devono trovarsi lì dove il programma si aspetta di trovarle.

    Non centra il manifest o il fatto di un jar "eseguibile".
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  10. #10
    Guarda, quando creai un applicazione che usava immagini mal caricate, al limite l'eseguibile partiva ma non mostrava le immagini. Ora l'eseguibile non parte proprio! La cosa curiosa è che fino a poco tempo fa riuscivo a creare eseguibili funzionanti, ed ora no, sempre relativamente agli stessi programmi .-.

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.