Cómo instalar Java en CentOS 8

Java es uno de los lenguajes de programación más populares que se utilizan para crear diferentes tipos de aplicaciones y sistemas.

Hay dos implementaciones diferentes de Java, OpenJDK y Oracle Java, sin casi diferencias entre ellas, excepto que Oracle Java tiene algunas características comerciales adicionales. Oracle Java License solo permite el uso no comercial del software, como el uso personal y de desarrollo. OpenJDK es una implementación de código abierto de la Plataforma Java.

Los repositorios predeterminados de CentOS 8 incluyen las dos últimas versiones principales de Java LTS, Java 8 y Java 11.

En este tutorial, explicaremos cómo instalar una o más versiones de Java (OpenJDK) en CentOS 8 y cómo establecer el Java predeterminado a través de alternativas.

Instalación de OpenJDK 11 #

La recomendación general es instalar la última versión de Java LTS (JDK 11). Algunas aplicaciones basadas en Java pueden requerir una versión específica de Java, por lo que es posible que deba consultar la documentación de la aplicación.

Para instalar OpenJDK 11 en CentOS 8, ejecute el siguiente comando como root o usuario con privilegios sudo:

sudo dnf install java-11-openjdk-devel

Una vez finalizada la instalación, puede verificarla comprobando la versión de Java:

java -version

La salida debería ser algo como esto:

openjdk version "11.0.4" 2019-07-16 LTSOpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS)OpenJDK 64-Bit Server VM 18.9 (build 11.0.4+11-LTS, mixed mode, sharing)

¡Eso es todo! Ha instalado correctamente Java en su sistema CentOS 8.

CentOS 8 también admite una versión sin cabezal de OpenJDK que proporciona un tiempo de ejecución de Java mínimo necesario para ejecutar aplicaciones sin interfaz gráfica de usuario (sin soporte para teclado, ratón y sistemas de visualización). Esta versión es más adecuada para aplicaciones de servidor, ya que tiene menos dependencias y utiliza menos recursos del sistema.

Para instalar sólo el headless OpenJDK 11 tipo:

sudo dnf install java-11-openjdk-headless

Si usted ya ha instalado java-11-openjdk-devel, el headless paquete será instalado como una dependencia.

La instalación de OpenJDK 8 #

Java 8, la versión anterior de Java LTS, sigue siendo compatible y ampliamente utilizada. Si su aplicación requiere Java 8, puede instalarla escribiendo el siguiente comando:

sudo dnf install java-1.8.0-openjdk-devel

Verifique la instalación comprobando la versión de Java:

java -version

La salida debería tener un aspecto similar a este:

openjdk version "1.8.0_222"OpenJDK Runtime Environment (build 1.8.0_222-b10)OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

En tiempo de ejecución de Java, instale el paquete java-1.8.0-openjdk-headless.

Establecer la versión predeterminada de Java #

Si ha instalado varias versiones de Java en su sistema CentOS, puede utilizar el sistema de alternativas para establecer qué versión de Java se utilizará cuando escriba java en el terminal.

Para comprobar qué versión de Java está configurada como predeterminada, escriba:

java -version

Si desea cambiar la versión predeterminada, use el comando alternatives:

sudo alternatives --config java

La salida se verá algo como a continuación:

There are 2 programs which provide 'java'. Selection Command----------------------------------------------- 1 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.4.11-0.el8_0.x86_64/bin/java)*+ 2 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre/bin/java)Enter to keep the current selection, or type selection number: 

Se imprimirá en la pantalla una lista de todas las versiones de Java instaladas. Ingrese el número de la versión que desea usar como predeterminada y presione Enter.

también puede que desee cambiar el valor predeterminado javac versión:

sudo alternatives --config java
javac es una utilidad de comandos para compilar programas Java.

Configurar la variable de entorno JAVA_HOME #

La variable de entorno JAVA_HOME es utilizada por algunas aplicaciones Java para determinar la ubicación de instalación de Java y especificar qué versión de Java se debe usar para ejecutar la aplicación.

Para establecer la variable JAVA_HOME por usuario, agréguela a ~/.bashrc o a cualquier otro archivo de configuración que se cargue cuando el usuario inicie sesión. Para una configuración de todo el sistema, utilice un script dentro del directorio /etc/profile.d.

Suponiendo que desee establecer JAVA_HOME en OpenJDK 8, agregue la siguiente línea al final del archivo:

/etc/profile.d/java.sh
JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk"

Para que los cambios surtan efecto en su shell actual, puede cerrar e iniciar sesión o usar el comando source:

source /etc/profile.d/java.sh

Compruebe que el JAVA_HOME La variable de entorno se ha configurado correctamente:

echo $JAVA_HOME

La salida debe mostrar la ruta de acceso a la instalación de Java:

/usr/lib/jvm/java-1.8.0-openjdk

También puede configurar JAVA_HOME en la configuración de la aplicación, el archivo de unidad systemd o en la línea de comandos al iniciar el programa.

Por ejemplo, para ejecutar Maven con Java 8, debe escribir:

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk mvn --version
...Java version: 1.8.0_222, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre...

Conclusión #

CentOS 8 admite dos versiones principales de Java, Java 8 y Java 11, que se pueden instalar utilizando el dnf gestor de paquetes.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.