(Risolto) La variabile di ambiente JAVA_HOME non è definita correttamente su macOS

19 ott 2022 1 min di lettura
(Risolto) La variabile di ambiente JAVA_HOME non è definita correttamente su macOS
Indice dei contenuti

Introduzione

JAVA_HOME è una variabile di ambiente utilizzata da varie applicazioni basate su Java per individuare JVM (JDK) su qualsiasi sistema. Allo stesso modo, Maven richiedeva anche che JAVA_HOME fosse impostato correttamente sul tuo sistema.

Il problema:

Quando ho provato a controllare la versione di Maven sul nostro PC macOS, ho ricevuto il seguente errore nell'output:

mvn --version 
The JAVA_HOME environment variable is not defined correctly,
this environment variable is needed to run this program

La soluzione:

Poiché il messaggio di errore mostra chiaramente che la variabile di ambiente JAVA_HOME non è impostata sul mio PC. Quindi la soluzione semplice è impostarlo correttamente. Utilizzare i passaggi seguenti per risolvere questo problema.

macOS 10.5 (Catalina) e versioni successive utilizzano Zsh come shell predefinita. La versione precedente utilizza la shell Bash. Quindi prima è identificare la shell che è in esecuzione sul tuo sistema. Apri un terminale e digita:

echo $SHELL 

Per Zsh l'output sarà /bin/zsh e per la shell Bash l'output sarà /bin/bash.

Ora, imposta la variabile d'ambiente JAVA_HOME in base alla shell attiva:

  • Zsh (/bin/zsh): modifica il file ~/.zshenv e aggiungi il codice seguente:
export JAVA_HOME=$(/usr/libexec/java_home)
  • Bash (/bin/bash): modifica il file ~/.bash_profile e aggiungi il codice seguente:
export JAVA_HOME=$(/usr/libexec/java_home)

Questo dovrebbe risolvere il problema sul tuo sistema. Per confermare, apri una nuova shell e stampa il valore della variabile d'ambiente JAVA_HOME e conferma anche con il comando che stavi ricevendo l'errore:

echo $JAVA_HOME 
mvn --version 
Nota: se il problema persiste dopo aver impostato correttamente la variabile di ambiente, assicurarsi che altri script non la sovrascrivano. Puoi trovare l'ordine di esecuzione dello script qui.

Conclusione

In questo tutorial abbiamo visto come risolvere il seguente problema: The JAVA_HOME environment variable is not defined correctly, this environment variable is needed to run this program.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.