Cómo configurar la ruta del entorno Java en Ubuntu


164

Acabo de instalar JDK en Ubuntu con el sudo apt-get install openjdk-6-jdkcomando, después de la instalación, ¿dónde está binubicado el directorio Java ? ¿Y cómo puedo configurar la ruta del entorno para ese directorio? Tengo poca experiencia con Ubuntu, ¿alguien puede dar algún consejo o sugerir algún buen sitio web como referencia?

Respuestas:


201

establecer variables de entorno de la siguiente manera

Edite el archivo de ruta del sistema / etc / profile

sudo gedit /etc/profile

Agregue las siguientes líneas al final

JAVA_HOME=/usr/lib/jvm/jdk1.7.0
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

Luego cierre sesión e inicie sesión en ubuntu para configurar las rutas ...


19
¿Por qué exportar JRE_HOME?
whossname

3
No funcionó para mí y la versión anterior se mantuvo como predeterminada. Cambié el orden de la ruta export PATH=${JAVA_HOME}/bin:${PATH} y la versión se actualizó. Creo que la prioridad de izquierda a derecha funciona aquí.
Ridhuvarshan


1
.bash_profile y .bashrc son específicos de bash, mientras que .profile es leído por muchos shells en ausencia de sus propios archivos de configuración específicos de shell. / etc / bash_profile (fallback / etc / profile) se lee antes del perfil del usuario para la configuración de todo el sistema.
Ryan Augustine

También tendría que cerrar sesión e iniciar sesión para que los cambios surtan efecto en / etc / profile, pero solo cierre y abra una nueva terminal si cambia ~ / .bashrc
Ryan Augustine

78

Java se instala normalmente para /usr/java localizar la versión que tiene y luego hacer lo siguiente:

Suponiendo que está usando bash (si recién está comenzando, recomiendo bash sobre otros shells), simplemente puede escribir bash para iniciarlo.

Edite su ~/.bashrcarchivo y agregue las rutas de la siguiente manera:

por ej. vi~/.bashrc

inserte las siguientes líneas:

export JAVA_HOME=/usr/java/<your version of java>
export PATH=${PATH}:${JAVA_HOME}/bin

después de guardar los cambios, salga y reinicie su bash o simplemente escriba bash para iniciar un nuevo shell

Escriba exportpara asegurarse de que las rutas sean correctas.

Escriba java -versionpara garantizar que Java sea accesible.


¡Perfecto! gracias. NB: es posible que desee eliminar el openJDK predeterminado de su sistema, ya que aparece primero en la ruta global. Entonces, después de cargar el script anterior, solo aparecerá "javac", no java, debido al valor predeterminado de openjk-jre. ~ sudo apt-get remove openjdk- * ~
kholofelo Maloma

Tengo problemas con él, probé todos los métodos para actualizar Java, pero aún así mi versión es jdk1.7 pero configuré el camino a jdk1.8
Vonton

32

Ubuntu instala openjdk6 en la /usr/lib/jvm/java-6-openjdkruta. Entonces tendrás el contenedor adentro /usr/lib/jvm/java-6-openjdk/bin. Por lo general, el classpath se configura automáticamente para los ejecutables de Java y relacionados.


23

Para configurar JAVA_HOME / PATH para un solo usuario , inicie sesión en su cuenta y abra el archivo .bash_profile

$ vi ~/.bash_profile

Establezca JAVA_HOME de la siguiente manera utilizando la exportación de sintaxis JAVA_HOME=<path-to-java>. Si su ruta está configurada en /usr/java/jdk1.5.0_07/bin/java, configúrela como sigue:

export JAVA_HOME=/usr/java/jdk1.5.0_07/bin/java

Establezca la RUTA de la siguiente manera:

export PATH=$PATH:/usr/java/jdk1.5.0_07/bin

Siéntase libre de reemplazar /usr/java/jdk1.5.0_07 según su configuración. Guarde y cierre el archivo. Simplemente cierre sesión y vuelva a iniciar sesión para ver los nuevos cambios. Alternativamente, escriba el siguiente comando para activar la nueva configuración de ruta inmediatamente:

$ source ~/.bash_profile

O

$ . ~/.bash_profile

Verifique la nueva configuración:

$ echo $JAVA_HOME
$ echo $PATH

Consejo: Utilice el siguiente comando para encontrar la ruta exacta a la que se ejecuta Java en UNIX / Linux:

$ which java

Tenga en cuenta que el archivo ~ / .bashrc es similar, con la excepción de que ~ / .bash_profile se ejecuta solo para shells de inicio de sesión de Bash y .bashrc se ejecuta para cada nuevo shell de Bash.

Para configurar JAVA_HOME / PATH para todos los usuarios , debe configurar la configuración global en el archivo /etc/profileOR /etc/bash.bashrcpara todos los usuarios:

# vi /etc/profile

A continuación, configure las variables PATH / JAVA_PATH de la siguiente manera:

export PATH=$PATH:/usr/java/jdk1.5.0_07/bin
export PATH=$PATH:/usr/java/jdk1.5.0_07/bin

Guarde y cierre el archivo. Una vez más, debe escribir el siguiente comando para activar la configuración de ruta inmediatamente:

# source /etc/profile

O

# . /etc/profile

1
¿Estás seguro de que debes establecer JAVA_HOME en el binario de Java ?
Todos los trabajadores son esenciales

8

si ha instalado solo openJDK, debe actualizar sus enlaces, porque puede tener alguna instalación de OpenJDK.

sudo update-alternatives --config java

después de este

$gedit ~/.bashrc

agregue la siguiente línea en el archivo

JAVA_HOME=/usr/lib/jvm/YOUR_JAVA_VERSION export PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME

puedes conseguir tu versión java

java -version

7

Para configurar el alcance amplio del sistema, debe usar el

/ etc / archivo de entornosudo gedit /etc/environment

es la ubicación donde puede definir cualquier variable de entorno. Puede ser visible en todo el alcance del sistema. Después de definir la variable, el sistema debe reiniciarse.

EJEMPLO

sudo gedit /etc/environment

Añadir como siguiente:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
JAVA_HOME="/opt/jdk1.6.0_45/"

Aquí está el sitio donde puede encontrar más: http://peesquare.com/blogs/environment-variable-setup-on-ubuntu/


Si actualiza alguna entrada, vuelva a cargar usando el source /etc/environmentcomando
Waleed Abdalmajeed

6

Debería poner java en su camino, probablemente en / usr / bin / java. La forma más fácil de encontrarlo es abrir un término y escribir "which java".


6

Necesita establecer la variable $ JAVA_HOME

En mi caso, mientras configuraba Maven, tuve que configurarlo donde está instalado JDK.

Primero descubra dónde está instalado JAVA:

$ whereis java

java: / usr / bin / java / usr / share / java /usr/share/man/man1/java.1.gz

Ahora cava más profundo

$ ls -l /usr/bin/java

lrwxrwxrwx 1 root root 46 25 de agosto de 2018 / etc / alternativas / java -> / usr / lib / jvm / java-8-openjdk-amd64 / jre / bin / java Profundice más:

$ ls -l /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

-rwxr-xr-x 1 root root 6464 14 de marzo 18:28 / usr / lib / jvm / java-8-openjdk-amd64 / jre / bin / java

Como no se hace referencia a ningún otro directorio, usaremos esto.

Abra / etc / environment utilizando nano

$ sudo nano /etc/environment

Añadir las siguientes líneas

JAVA_HOME = / usr / lib / jvm / java-1.8.0-openjdk-amd64

exportar JAVA_HOME

Vuelva a cargar la RUTA usando

$. /etc/environment

Ahora,

$ echo $JAVA_HOME

Aquí está su salida:

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

Fuentes a las que me referí:

https://askubuntu.com/a/175519

https://stackoverflow.com/a/23427862/6297483


4
  • Terminal abierto ( Ctrl+ Alt+ t)
  • Tipo

    sudo gedit .bashrc 
  • Ingrese la contraseña del usuario ubuntu
  • Ir a la última línea del archivo
  • Escriba el siguiente código en una nueva línea

    export JAVA_HOME=enter_java_path_here
    export PATH=$JAVA_HOME/bin:$PATH
    eg: export JAVA_HOME=/home/pranav/jdk1.8.0_131
        export PATH=$JAVA_HOME/bin:$PATH
  • Guarda el archivo
  • Tipo

    source ~/.bashrc

    en terminal

  • Hecho

4
  1. Actualizar bashrcarchivo para agregarJAVA_HOME

    sudo nano ~/.bashrc

  2. Añadir JAVA_HOMEal bashrcarchivo

    export JAVA_HOME=/usr/java/<your version of java>
    export PATH=${PATH}:${JAVA_HOME}/bin

  3. Asegúrese de que Java sea accesible

    java -version

  4. En caso de instalación manual de JDK, si recibió un error como se muestra a continuación

    Se produjo un error durante la inicialización de VM
    java / lang / NoClassDefFoundError: java / lang / Object
    
  5. Ejecute el siguiente comando en su directorio JAVA_HOME / lib:

    unpack200 -r -v -l "" tools.pack tools.jar

  6. Ejecute los siguientes comandos en su JAVA_HOME / jre / lib

    ../../bin/unpack200 rt.pack rt.jar ../../bin/unpack200 jsse.pack jsse.rar ../../bin/unpack200 charsets.pack charsets.jar

  7. Asegúrese de que Java sea accesible

    java -version


4

Cómo instalar paquetes java:

Instale la versión / versiones de java deseadas utilizando paquetes oficiales de ubuntu, que se administran con alternativas:
sudo apt install -y openjdk-8-jdk
u / y otra versión: sudo apt install -y openjdk-11-jdk

Las respuestas anteriores son correctas solo cuando tiene solo una versión para todo el software en su máquina, y puede omitir el uso de alternativas de actualización. Entonces uno puede codificarlo rápidamente en .bashrc o en otro lugar:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
pero no es saludable, ya que más adelante puede cambiar la versión.

Forma correcta de configurar JAVA_HOME (y opcionalmente JAVA_SDK, JAVA_JRE)

La forma correcta (y obligatoria cuando tiene más de uno) es detectar a qué alternativa de actualización apunta y utilizar siempre alternativas de actualización para cambiar la versión activa.

Aquí están las sugerencias para ambos: solo cuenta Unix específica o para todas las cuentas (nivel de máquina).

1. solo para una cuenta Unix específica:

Use esto si no tiene permisos para hacerlo a nivel de máquina.

cat <<'EOF' >>~/.bashrc

export JAVA_HOME=$(update-alternatives --query java | grep Value | cut -d" " -f2 | sed 's!\(\/.*\)jre\(.*\)!\1!g')
export JDK_HOME=${JAVA_HOME}
export JRE_HOME=${JDK_HOME}/jre/

EOF

2. Para hacerlo a nivel de máquina, y para todos los depósitos de bourne, necesita 2 pasos:

2.a

cat <<'EOF' | sudo tee /etc/profile.d/java_home_env.sh >/dev/null

export JAVA_HOME=$(update-alternatives --query java | grep Value | cut -d" " -f2 | sed 's!\(\/.*\)jre\(.*\)!\1!g')
export JDK_HOME=${JAVA_HOME}
export JRE_HOME=${JDK_HOME}/jre/

EOF

Como su shell puede no estar configurado como interactivo de manera predeterminada, es posible que también desee hacer esto:
2.b

cat <<'EOF' | sudo tee -a /etc/bash.bashrc >/dev/null
if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
EOF

PD: No debería haber necesidad de actualizar $ PATH, ya que update-alternativa se encarga del enlace a / usr / bin /.
Más información en: https://manpages.ubuntu.com/manpages/trusty/man8/update-alternatives.8.html


2

Permítanme simplificar, primero descargue JDK del sitio web de Oracle: Enlace

2] Luego extraerlo

3] Cree una carpeta (jvm) en / usr / lib / ie / usr / lib / jvm

4] mueva la carpeta extraída del jdk a / usr / lib / jvm /

* Nota: use el comando terminal, sudo, mv, es decir, sudo mv

5] Cree un archivo .sh en /etc/profile.d/ por ejemplo: /etc/profile.d/myenvvar.sh

6] En el tipo de archivo .sh

export JAVA_HOME = / usr / lib / jvm / jdk1.7.0

export PATH = $ PATH: $ JAVA_HOME / bin

* Nota: use terminal, gedit y sudo, por ejemplo: sudo gedit myenvvar.sh

7] Apague la computadora, después de todos estos pasos y reiníciela

8] Abra la Terminal y escriba

java -version

9] Verifique la salida, luego escriba

echo $ JAVA_HOME

10] Comprueba la salida y sé feliz :)


Mi JAVA_HOME se configuró en /etc/profile.d/maven.sh. Gracias.
Fid

2

Paso 1:

sudo gedit ~/.bash_profile

Paso 2:

JAVA_HOME=/home/user/tool/jdk-8u201-linux-x64/jdk1.8.0_201
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

Paso 3:

source ~/.bash_profile

1

abrir jdk una vez instalado reside generalmente en su / usr / lib / java-6-openjdk Como de costumbre, necesitaría configurar JAVA_HOME, calsspath y Path. En ubuntu 11.04 hay un archivo de entorno disponible en / etc donde necesita configurar todos Tres caminos. Y luego necesitaría reiniciar su sistema para que los cambios surtan efecto.

Aquí hay un sitio para ayudarlo en http://aliolci.blogspot.com/2011/05/ubuntu-1104-set-new-environment.html


1

Todo lo que tiene que hacer ahora es fijar las “JAVA_HOME”y “PATH”variables de entorno y después que haya terminado. Ingrese los siguientes comandos para configurar sus variables de entorno. Asegúrese de que sus variables de entorno apunten a una instalación válida de JDK en su máquina. Para Ubuntu 18.04, la ruta es/usr/lib/jvm/java-8-openjdk-amd64/

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

Para verificar si su ruta JAVA_HOME se ha guardado correctamente, ingrese el siguiente comando para verificar.

echo $JAVA_HOME

Esto funciona solo para la sesión de terminal y en ningún otro lugar
Jack

1

Tengo un Linux Lite 3.8 (se basa en Ubuntu 16.04 LTS) y un cambio de ruta en el siguiente archivo (con privilegios de root) con reinicio ha ayudado.

/etc/profile.d/jdk.sh

0

Puede instalar el Ubuntu predeterminado (17.10) java desde apt:

sudo apt install openjdk-8-jdk-headless 

Y establecerá la RUTA para usted, si en su lugar necesita instalar una versión específica de Java, puede seguir este YouTube


0

Abrir archivo /etc/environmentcon un editor de texto Agregar la línea JAVA_HOME="[path to your java]" Guardar y cerrar y luego ejecutarsource /etc/environment


0

Establecer la versión de Java de la lista de instalados. Para ver la lista de la versión instalada, ejecute el siguiente comando:

update-java-alternatives --list

Luego configure su versión de Java de acuerdo con el siguiente comando:

sudo update-java-alternatives --set /usr/lib/jvm/java-1.8.0-openjdk-amd64

-1

Instalación de Oracle Java:

  1. Descargue el tarball (archivo .tar) del sitio web de Oracle
  2. descomprímalo por sudo tar -xvpzf fileName -C / installation_folder_name
  3. cambiar el permiso y la propiedad de los archivos
  4. agregue las siguientes dos líneas en / etc / profile

export JAVA_HOME = / home / abu / Java / jdk1.8.0_45 / export PATH = $ JAVA_HOME / bin: $ PATH

  1. reinicie la máquina y verifique mediante java -version y javac -version
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.