Cómo configurar correctamente la variable JAVA_HOME en Ubuntu Linux

Si está ejecutando programas Java en Ubuntu usando Eclipse, Maven o Netbeans, etc., deberá configurar JAVA_HOME en su ruta. De lo contrario, su sistema se quejará de que “la variable de entorno java_home no está configurada”.

En este tutorial para principiantes, mostraré los pasos para configurar correctamente la variable de inicio de Java en Ubuntu. Los pasos también deberían ser válidos para la mayoría de las demás distribuciones de Linux.

El proceso consta de estos pasos:

  • Asegurarse de que Java Development Kit (JDK) esté instalado.
  • Encontrar la ubicación correcta del ejecutable JDK.
  • Establecer la variable JAVA_HOME y hacer que el cambio sea permanente.

Paso 1: compruebe si JDK está instalado

La forma más sencilla de comprobar si Java Development Kit (JDK) está instalado en su sistema Linux es ejecutando este comando:

javac --version

El comando anterior verifica la versión del compilador de Java. Si está instalado, mostrará la versión de Java.

El compilador de Java está instalado

Si el comando muestra un error como el comando javac no encontrado, tendrá que instalar JDK.

El compilador de Java no está instalado

Si el compilador de Java no está instalado en su sistema, instale el kit de desarrollo de Java con este comando:

sudo apt install default-jdk

Esto instalará la versión predeterminada de Java en su versión actual de Ubuntu. Si necesita alguna otra versión específica de Java, deberá especificarla al instalar Java en Ubuntu.

Una vez que se haya asegurado de que Java Compiler esté presente en su sistema, es hora de encontrar su ubicación.

Paso 2: Obtenga la ubicación del ejecutable JDK (compilador de Java)

El ejecutable generalmente se encuentra en el directorio / usr / lib / jvm. No te dejaré solo para un juego de adivinanzas. En su lugar, averigüemos la ruta del ejecutable de Java.

Usa el comando which para obtener la ubicación del ejecutable del compilador de Java:

which javac

El problema aquí es que la ubicación que da es en realidad un enlace simbólico. Tendrás que seguirlo un par de veces:

Y cuando encuentre una ruta como / usr / lib / jvm / java-11-openjdk-amd64 / bin / javac, eliminar el / bin / javac de eso para obtener algo como / usr / lib / jvm / java-11-openjdk-amd64

Un método más fácil es seguir el enlace simbólico y llegar al archivo ejecutable real directamente usando este comando:

readlink -f `which javac` | sed "s:/bin/javac::"

El comando readlink sigue un enlace simbólico. He usado `alrededor del cual java. Esto se llama sustitución de comando y reemplaza el comando con su salida. Sed se usa para reemplazar / bin / javac por nada y, por lo tanto, eliminarlo por completo.

En mi example, la ubicación del archivo ejecutable es / usr / lib / jvm / java-11-openjdk-amd64. Podría ser diferente para ti. Copie la ruta correcta que obtuvo del comando anterior en su sistema. Ya sabes, puedes copiar y pegar en la terminal de Ubuntu.

Paso 3: Configuración de la variable JAVA_HOME

Ahora que tiene la ubicación, úsela para configurar la variable de entorno JAVA_HOME:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/bin/java

Verifique el valor del directorio JAVA_HOME:

echo $JAVA_HOME

establecer java home ubuntu linux

Intente ejecutar su programa o proyecto en el MISMO TERMINAL y vea si funciona.

Esto aún no ha terminado. La variable JAVA_HOME que acaba de declarar es temporal. Si tu close el terminal o iniciar una nueva sesión, volverá a estar vacío.

Para configurar la variable JAVA_HOME ‘permanentemente’, debe agregarla al archivo bashrc en su directorio de inicio.

Puede utilizar el editor Nano para editar archivos en la terminal de Linux. Si no desea eso y adopta un enfoque simple de copiar y pegar, use los siguientes comandos:

Haga una copia de seguridad de su archivo bashrc (en caso de que lo estropee, puede recuperarlo):

cp ~/.bashrc ~/.bashrc.bak

Próximo, usa el comando echo para agregar el comando de exportación que usó al principio de esta sección. Cambie el comando a continuación para usar la ruta correcta como la muestra su sistema en.

echo "export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64" >> ~/.bashrc

Verifique que se haya agregado correctamente al final del archivo:

tail -3 ~/.bashrc

Lo anterior comando de cola mostrará las últimas 3 líneas del archivo especificado.

Aquí está el resultado completo de los tres comandos anteriores.

Ahora, incluso si sale de la sesión o reinicia el sistema, la variable JAVA_HOME seguirá configurada en el valor que especificó. Eso es lo que quieres, ¿verdad?

Tenga en cuenta que si cambia la versión predeterminada de Java en el futuro, tendrá que cambiar el valor de JAVA_HOME y apuntar a la ruta ejecutable correcta.

Espero que este tutorial no solo te haya ayudado a configurar Java Home, sino que también te haya enseñado cómo lo estás haciendo.

Si aún tiene problemas o tiene alguna pregunta o sugerencia, hágamelo saber en los comentarios.