Cómo configurar JAVA_HOME en Linux para todos los usuarios

Soy nuevo en el sistema Linux y parece que hay demasiadas carpetas de Java.

java -version me da:

  • java versión "1.7.0_55"
  • Entorno de ejecución OpenJDK (rhel-2.4.7.1.el6_5-x86_64 u55-b13)
  • OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode)

Cuando estoy tratando de construir un proyecto Maven , estoy recibiendo error:

Error: JAVA_HOME is not defined correctly.
We cannot execute /usr/java/jdk1.7.0_05/bin/java

¿Podría decirme, por favor, qué archivos tengo que modificar tanto para el usuario root como para el usuario no-root y dónde se encuentra exactamente java?

Solución
  1. encontrar /usr/lib/jvm/java-1.x.x-openjdk

  2. vim /etc/profile

    Anteponer sudo si se ha iniciado la sesión como usuario no privilegiado, es decir, sudo vim.

  3. Pulse 'i' para entrar en modo de inserción

  4. Añada:

     export JAVA_HOME="ruta que encontró"
    
     export PATH=$JAVA_HOME/bin:$PATH
  5. cierre la sesión y vuelva a iniciarla, reinicie, o utilice source /etc/profile para aplicar los cambios inmediatamente en su shell actual

Comentarios (13)

Puedes usar /etc/profile o mejor un archivo como /etc/profile.d/jdk_home.sh

export JAVA_HOME=/usr/java/jdk1.7.0_05/

Tienes que recordar que este archivo sólo se carga con nuevas conchas de inicio de sesión.. Así que después de bash -l o una nueva gnome-session y que no cambia con las nuevas versiones de Java.

Comentarios (5)

Hacer lo que hace Oracle (como antiguo empleado de Sun no me acostumbro a eso)

ln -s latestJavaRelease /usr/java/default Donde latestJavaRelease es la versión que quieres usar

entonces exporta JAVA_HOME=/usr/java/default

Comentarios (0)