Veamos paso a paso cómo instalar OpenJDK en un sistema operativo linux.
- Descargar el instalador:
- Página principal: https://openjdk.java.net/
- Binario: https://jdk.java.net/11/
- Descomprimir el binario en la carpeta de destino. Generalmente es en
/opt/java
:
- Crea la carpeta java dentro de opt
- Descomprime el binario
1sudo mkdir -p /opt/java 2sudo tar xvf openjdk-11*_bin.tar.gz -C /opt/java 3
- Crear las variables de entorno
- JAVA_HOME: Esta variable la utiliza java para saber dónde se encuentran sus binarios.
1export JAVA_HOME=/ruta/destino/versionjava 2// en nuestro ejemplo, la ruta sería: 3// /opt/java/jdk-11.0.2 4// Nota: debes tener cuidado de NO colocar el slash `/` al final. 5
Puedes confirmar la creación de la variable usando:
1echo $JAVA_HOME 2// la salida debe ser algo como: /opt/java/jdk-11.0.2 3
- PATH: Se debe agregar la carpeta bin de la instalación de java en el PATH para que el shell encuentre los ejecutables de java.
1export PATH=$PATH:$JAVA_HOME/bin 2
Confirma la actualización de PATH usando:
1echo $PATH 2// la salida debe ser algo como: 3// /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/java/jdk-11.0.2/bin 4// nótese la ruta de los binarios de la instalación de java 5
Si todo va bien, ya puedes ejecutar java para conocer la versión que se está usando:
1java -version 2// La salida debe ser algo como: 3// openjdk version "11.0.2" 2018-10-16 4// OpenJDK Runtime Environment 18.9 (build 11.0.2+7) 5// OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+7, mixed mode) 6
- Persistiendo las variables de entorno
El problema que tenemos en este momento es que si cerramos la consola, cuando volvamos a ingresar ya no está la variable $JAVA_HOME y la variable $PATH no apunta a la carpeta bin de la instalación de java. Así que debemos persistir estos cambios para que cada vez que se ingrese a la consola, las variables de entorno estén correctamente configuradas.
Existen diferentes formas de persistir las variables de entorno. Se pueden persistir para un único usuario y también se pueden persistir para todo el sistema. En este último las variables de entorno quedan para todos los usuarios.
4.1. Persistir las variables a un único usuario:
El archivo que debemos modificar para este paso se encuentra en: /home/tu-usuario/.bashrc
(cambia tu-usuario
por el nombre de usuario al que vas a configurar). En este archivo agregaremos las instrucciones export
que vimos en los anteriores pasos.
\* Nota: ten cuidado al editar estos archivos, cualquier error al configurarlo y puedes sufrir de comportamientos extraños o que el sistema deje de funcionar.
- Edita el archivo
.bashrc
del usuario y al final del mismo agrega lo siguiente:
1export JAVA_HOME=/opt/java/jdk-11.0.2 2export PATH=$PATH:$JAVA_HOME/bin 3
- Ahora cierra la consola y vuelvela a abrir, ya debes tener java funcionando. Puedes confirmarlo así:
1java -version 2// La salida debe ser algo como: 3// openjdk version "11.0.2" 2018-10-16 4// OpenJDK Runtime Environment 18.9 (build 11.0.2+7) 5// OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+7, mixed mode) 6
4.2 Persistir las variables a todos los usuarios: Personalmente me gusta más configurar las variables de java a todo el sistema. Con esto no me preocupo por cual usuario ejecuta alguna aplicación.
\* Nota: ten cuidado al editar estos archivos, cualquier error al configurarlo y puedes sufrir de comportamientos extraños o que el sistema deje de funcionar.
- Edita el archivo
/etc/environment
. En la línea donde se encuentrePATH
agrega la dirección absoluta del binario de la instalación de java. Esto es necesario ya que aquí no podemos llamar la variable de entorno $JAVA_HOME. Por lo tanto, la línea path debe quedar algo así (si tu PATH tiene más contenido, no lo vayas a borrar, sólo agrega la ruta de java):
1PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/java/jdk-11.0.2/bin" 2
- Agrega una nueva línea para la variable JAVA_HOME así:
1JAVA_HOME="/opt/java/jdk-11.0.2" 2
En mi caso, el archivo /etc/environment
tiene dos líneas, una para PATH
y otra para JAVA\_HOME
.
- Por último, debes volver a cargar esas variables de entorno para que tomen efecto (o puedes reiniciar el sistema, lo cual es muy aburrido):
1source /etc/environment 2
- Ahora a divertirnos!
1java -version 2