En Ubuntu, me gustaría cambiar mi variable de entorno JAVA_HOME de un lado a otro entre Java 5 y 6.
Abro un terminal y escribo lo siguiente para establecer la variable de entorno JAVA_HOME:
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
Y en esa misma ventana de terminal, escribo lo siguiente para verificar que la variable de entorno se haya actualizado:
echo $JAVA_HOME
Y veo /usr/lib/jvm/java-1.5.0-sun, que es lo que espero ver. Además, modifico ~ / .profile y configuro la variable de entorno JAVA_HOME en /usr/lib/jvm/java-1.5.0-sun.
Y ahora, para el problema: cuando abro una nueva ventana de terminal y verifico mi variable de entorno JAVA_HOME escribiendo echo $ JAVA_HOME , veo que mi variable de entorno JAVA_HOME se ha revertido a Java 6. Cuando reinicio mi máquina (o inicio sesión Supongo que la variable de entorno JAVA_HOME está configurada en Java 5 (presumiblemente debido a la modificación que hice en mi ~ / .profile).
¿Hay alguna forma de evitar esto para que pueda cambiar mi entorno JAVA_HOME sin tener que cerrar la sesión y volver a iniciarla (Y hacer que el cambio de la variable de entorno permanezca en todas las ventanas de terminal nuevas)?
fuente
~/.profile
archivo solo se lee cuando inicia sesión en Ubuntu, por lo que si cierra sesión / inicia sesión, JAVA_HOME se configura para todos los terminales y cualquier otra aplicación que ejecute. Si configura JAVA_HOME~/.bashrc
, solo se verán las aplicaciones que se ejecutan desde el terminal.Respuestas:
Coloque las variables de entorno en el
/etc/environment
archivo global :Ejecute "source / etc / environment" en cada shell donde desee que se actualicen las variables:
Comprueba que funciona:
Genial, no se necesita cerrar sesión.
Si desea establecer la variable de entorno JAVA_HOME solo en la terminal, configúrela en el archivo ~ / .bashrc .
fuente
/etc/environment
es especial y no permite la sustitución de variables, por ejemploJRE_HOME=${JAVA_HOME}/jre
, no funcionará.Esto probablemente resolverá su problema: https://help.ubuntu.com/community/EnvironmentVariables
fuente
Intenta estos pasos.
- Vamos a editar "etc \ profile". Las variables de entorno deben ingresarse al final del archivo. Como Ubuntu no da acceso a la carpeta raíz, tendremos que usar algunos comandos en el terminal
Paso 1: Inicie la Terminal. Escriba el comando:
gksudo gedit /etc/profile
Paso 2: se abrirá el archivo de texto del perfil. Ingrese las variables de entorno en la parte inferior de la página ........... Por ejemplo:
export JAVA_HOME=/home/alex/jdk1.6.0_22/bin/java
Paso 3: guarda y cierra el archivo. Compruebe si las variables de entorno se configuran mediante el comando echo ........ Ej.
echo $PATH
fuente
Necesita poner definición variable en el
~/.bashrc
archivo.Desde la página de manual de bash:
fuente
Tradicionalmente, si solo desea cambiar la variable en las ventanas de su terminal, configúrela en un
.bashrc
archivo, que se obtiene cada vez que se abre un nuevo terminal..profile
el archivo no se obtiene cada vez que abre un nuevo terminal.Vea la diferencia entre .profile y .bashrc en cuestión: ¿Cuál es la diferencia entre .bashrc, .bash_profile y .environment?
.bashrc
Debería resolver su problema. Sin embargo, no es la solución adecuada ya que está utilizando Ubuntu. Consulte la página de ayuda de Ubuntu " Variables de entorno de toda la sesión ". Por lo tanto, no es de extrañar que.profile
no funcione para usted. Yo uso Ubuntu 12.04 y xfce. Configuré mi.profile
y simplemente no tiene efecto incluso si me desconecto y entro. Experiencia similar aquí . Por lo tanto, puede que tenga que usar el.pam_environment
archivo y olvidarse por completo.profile
, y.bashrc
. Y TENGA EN CUENTA que.pam_environment
no es un archivo de script.fuente
Eche un vistazo
bash(1)
, necesita un shell de inicio de sesión para recoger~/.profile
, es decir, la-l
opción.fuente
Sé que esta es una pregunta larga y fría, pero surge cada vez que hay una nueva versión de Java nueva o reciente. Ahora esto se aplicaría fácilmente al intercambio 6 y 7.
He hecho esto en el pasado con
update-java-alternatives
: http://manpages.ubuntu.com/manpages/hardy/man8/update-java-alternatives.8.htmlfuente
Después de realizar cambios en .profile, debe ejecutar el archivo para que los cambios surtan efecto.
Una vez hecho esto, el comando echo funcionará.
fuente
~/.profile
lugar de./.profile
.