Introducción
JAVA_HOME es una variable de entorno utilizada por varias aplicaciones basadas en Java para ubicar JVM (JDK) en cualquier sistema. Del mismo modo, Maven también requería que JAVA_HOME se configurara correctamente en su sistema.
El problema:
Cuando traté de verificar la versión de Maven en nuestra PC macOS, obtuve el siguiente error en la salida:
mvn --version
The JAVA_HOME environment variable is not defined correctly,
this environment variable is needed to run this program
La solución:
Como el mensaje de error muestra claramente que la variable de entorno JAVA_HOME no está configurada en mi PC. Entonces, la solución simple es configurarlo correctamente. Use los siguientes pasos para resolver este problema.
macOS 10.5 (Catalina) y versiones posteriores usan Zsh como shell predeterminado. La versión anterior usa el shell Bash. Entonces, lo primero es identificar el shell que se está ejecutando en su sistema. Abra una terminal y escriba:
echo $SHELL
Para Zsh , la salida será /bin/zsh y para Bash , la salida será /bin/bash .
Ahora, configure la variable de entorno de JAVA_HOME
acuerdo con el shell activo:
- Zsh (/ bin / zsh): edite el archivo
~/.zshenv
y agregue el siguiente código: - Bash (/bin/bash): Edite el archivo
~/.bash_profile
y agregue el siguiente código:
export JAVA_HOME=$(/usr/libexec/java_home)
export JAVA_HOME=$(/usr/libexec/java_home)
Esto debería solucionar el problema en su sistema. Para confirmar, abra un nuevo shell e imprima el valor de la variable de entorno JAVA_HOME y también confirme con el comando que estaba recibiendo el error:
echo $JAVA_HOME
mvn --version
Nota: si el problema persiste después de configurar correctamente la variable de entorno, asegúrese de que otros scripts no lo anulen. Puede encontrar el orden de ejecución del script aquí .
Conclusión
En este tutorial hemos visto cómo solucionar el siguiente problema: La variable de entorno JAVA_HOME no está definida correctamente, esta variable de entorno es necesaria para ejecutar este programa.