DOMANDA [Java] Conversione file .jar in .exe e problemi di build con Maven

Giulio95

Nuovo Utente
25
3
Salve a tutti
Ho seguito un corso Java di base.
Ho realizzato una piccola applicazione Desktop che ricalca quanto appreso.

Ho due cose da chiedere alle quali non ho trovato risposte esaustive in rete, ne sul corso.

Sto usando Net Beans 12.2 e JDK15 da AdoptOpenJDK per lo sviluppo in Java, l'IDE esegue il RUN o il BUILD dell'applicazione con Maven (non ho capito se e' indispensabile).

Comunque il BUILD con Maven omette la proprieta' "Main-Class: package.Class" nel file "MANIFEST.MF" e non ho saputo risolvere se non scrivendocela io di persona andando a pescare il MANIFEST nel file .jar, quindi se qualcuno ha la soluzione glie ne sarei grato.

Comunque il problema piu' grande e' la conversione in .exe.

Ho scaricato Kick start Java ma all'avvio mi dichiara che non e' installata una JVM sul pc.
In effetti per lo sviluppo ho scaricato un JDK portabile e l'ho piazzato in un percorso che va oltre il DeskTop.

Ho pensato di scaricare un JRE.exe sempre da AdoptOpenJDK, ho eseguito l'installazione ma Kickstart da sempre lo stesso errore.
Qualcuno mi sa dire come far girare KickStart ?

Grazie mille in anticipo a tutti.
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,948
11,581
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
Comunque il problema piu' grande e' la conversione in .exe.

Ho scaricato Kick start Java ma all'avvio mi dichiara che non e' installata una JVM sul pc.
non è utile:
quel programma non ti trasforma il codice Java in un eseguibile per Windows, si limita ad "avvolgere" il .jar dentro un eseguibile che ha comunque bisogno della Java Virtual Machine per essere lanciato. Questo significa che se chi vuole eseguire il tuo programma non ha una JMM installata, non riesce ugualmente ad eseguirla.
Viceversa, basta installare una JVM con AdoptOpenJDK e la tua applicazione viene lanciata con un semplice doppio click sul file. Se questo non avviene devi controllare di aver impostato la variabile di sistema JAVA_HOME (se hai decompresso OpenJDK dal file .zip è sicuro che non ce l'hai)
 

Giulio95

Nuovo Utente
25
3
Allora diciamo che abbandono KickStart.
io riesco ad avviare il file .jar da riga di comando:
Cattura.GIF
Quindi la variabili JAVA_HOME e' impostata correttamente, il JDK e' fruibile e il file.jar funziona.

Per avviare con doppio click senza passare per il CMD:

Clicco col tasto destro sul file .jar >> Apri con

e vado a pescare l'applicazione "javaw" che si trova nella directory del JDK.
Non funziona, il file non apre e non succede assolutamente nulla di visibile a schermo.

Non capisco perche' !!

ho provato anche ad usare l'applicazione "java" al posto di "javaw", comunque non funzia =(

Qualche dritta?

Oppure la soluzione e' di abbinare un file.bat per aprire automaticamente con la riga di comando? solo che in questo caso si aprirebbe anche il CMD quindi vorrei evitare.

Grazie in anticipo
 
Ultima modifica:

Giulio95

Nuovo Utente
25
3
PATH??

Comunque, mi sa che a te serve una di queste due cose https://www.dariawan.com/tutorials/java/java-14-packaging-tool-jep-343/

la variabile d'ambiente JAVA_HOME contiene la directory del JDK che sto usando.
nella variabiled'ambiente PATH ho messo l'accesso alla cartella bin del JDK: %JAVA_HOME%\bin.

Le soluzioni che hai proposto sembrano interessanti ma hanno anche bisogno di approfondimento, credevo si potesse usare l'applicazione direttamente usando la JVM del JDK, senza passare per il CMD.

A me basterebbe capire questo.

Comunque grazie mille.
 

pabloski

Utente Èlite
2,868
916
credevo si potesse usare l'applicazione direttamente usando la JVM del JDK, senza passare per il CMD.

A me basterebbe capire questo.

Comunque grazie mille.

Si può ovviamente. E infatti a te, dal prompt dei comandi, funziona. Sarà che le variabili d'ambiente vengono settate solo per le sessioni della shell? Non ricordo come Windows operasse in tal senso, dato che non lo uso da oltre un decennio.
 

Giulio95

Nuovo Utente
25
3
Si può ovviamente. E infatti a te, dal prompt dei comandi, funziona. Sarà che le variabili d'ambiente vengono settate solo per le sessioni della shell? Non ricordo come Windows operasse in tal senso, dato che non lo uso da oltre un decennio.
Grazie pabloski.
Proverò a fare qualche ricerca in merito, se trovo qualcosa faccio sapere.

Saluti a tutti
 

Giulio95

Nuovo Utente
25
3
La seguente guida forse si avvicina a quello che serve:


L'ho seguita passo passo.

Stranamente tra le associazioni da eliminare, quella posta nel percorso
  • [HKEY_CLASSES_ROOT\SystemFileAssociations\.jar]
non riesco ad individuarla (nel senso che non e' presente la cartella ".jar").

Tuttavia ho continuato, ho eseguito "assoc .jar ... " e il resto.

Non ha funzionato nulla.
Sono arrivato all'ultima sezione, quella dei casi disperati che avviano il file.jar da CMD.

(risate) XD

per ora mi accontento di un file.bat ma la questione non finisce qui.

Un saluto a tutti
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!