GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo trabajar con múltiples versiones de Java bajo Linux

El problema

Instalé una nueva versión de Java Runtime Environment pero el comando "java -version" no muestra la nueva versión.

# java -version
java version "1.7.0_65"
OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)

La solución

Este problema podría ocurrir debido a múltiples instalaciones de Java en el sistema. Si se instalan varias versiones de paquetes openjdk en el sistema, alternativas El comando puede usarse para establecer la versión predeterminada de java. De las páginas de manual del comando "alternativas":

alternatives - maintain symbolic links determining default commands

Para establecer una versión predeterminada de Java cuando tiene varias versiones de Java instaladas, utilice el siguiente comando.

# alternatives --config java

There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*+ 1           /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
   2           /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

Enter to keep the current selection[+], or type selection number: 2

¿Cómo instalar una nueva ruta de Java al grupo de alternativas de Java?

También puede instalar manualmente una nueva ruta de Java al grupo java de alternativas. Esto se puede hacer usando el comando update-alternatives. La sintaxis para hacerlo es la siguiente.

# update-alternatives --install [link] [name] [path] [priority]

A continuación, puede configurar la ruta Java recién agregada como predeterminada del sistema mediante el comando "actualizar alternativas".

# update-alternatives --set [name] [path]

o

# alternatives --set [name] [path]

1. Por ejemplo, en el caso de jre-1.7.0-openjdk.x86_64, se puede usar el siguiente comando para instalarlo y configurarlo como la versión predeterminada de Java que se usará.

# update-alternatives --install "/usr/bin/java" "java" /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java 99999
# update-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java

Aquí,
99999 – es la prioridad (Debe ser la más alta para que la versión de Java sea la predeterminada).

2. Usando alternativas, verifique si los cambios surtieron efecto y finalmente confirme la versión de Java en el sistema.

# alternatives --config java

There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*+ 1           /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java    ### default java version
   2           /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

Enter to keep the current selection[+], or type selection number:

3. También puede usar el comando "java -version" para verificar la versión actual de java.

# java -version
java version "1.7.0_65"
OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)


Cent OS
  1. Cómo administrar múltiples versiones de Python con Pyenv en Linux

  2. Cómo trabajar con el cliente SFTP en Linux:10 comandos sftp

  3. Cómo trabajar con usuarios y grupos en Linux

  4. Cómo ocultar la versión de PHP en Linux

  5. Linux:¿cómo hacer que Oracle Java 7 funcione con Setcap Cap_net_bind_service+ep?

Cómo administrar varias versiones de Java con jEnv en Linux

Cómo administrar versiones de Nodejs con n en Linux

Cómo trabajar con Nano Editor en Linux

Cómo instalar varias versiones de Java en CentOS 8

Cómo cambiar entre varias versiones de Java en Debian

Cómo comprobar la versión del sistema operativo con la línea de comandos de Linux