Agregué esta línea al final de ~/.bashrc
export JAVA_HOME=/usr/java/jdk1.5.0_07/bin/java
Pero cuando ejecuto echo $JAVA_HOME
, no obtengo nada como resultado, esperaba "/usr/java/jdk1.5.0_07/bin/java".
¿Alguna idea?
Sistema operativo: Ubuntu 11.10
Respuesta1
Ambos /etc/bashrc
y ~/.bashrc
son lo que se conoce como non-login
archivos. Lo que significa que no se obtienen durante un shell de inicio de sesión a menos que sean llamados por /etc/profile
otro archivo.
Si /etc/profile
lo llama (como es típico), si desea probarlo en su shell actual, debe obtenerlo.
/root: #> source .bashrc
(fuente con la fuente del comando)
/root: # . .bashrc
(fuente con punto)
O tienes que crear una instancia de un login
shell usando su o sudo.
/root: # su -
(el guión inicia un shell de inicio de sesión que recuperará los archivos de inicio de sesión)
/root: # sudo su -
(usando sudo para realizar el comando de cambio de usuario)
y, por supuesto, puedes volver a iniciar sesión.
EDITAR:
Normalmente, aunque las rutas de Java no se configuran mediante .bashrc, se configuran como scripts separados en el /etc/profile.d
directorio. Al menos en las distribuciones empresariales que uso.
system1:/etc/profile.d # ll
-rw-r--r-- 1 root root 1438 Aug 30 2005 alljava.csh
-rw-r--r-- 1 root root 1682 Jul 13 2005 alljava.sh
system1:/etc/profile.d # cat alljava.sh
if [ -x /usr/$__libdir/jvm/java/bin/java ] || [ -x /usr/$__libdir/jvm/java/bin/jre ] ; then
export JAVA_BINDIR=/usr/$__libdir/jvm/java/bin
export JAVA_ROOT=/usr/$__libdir/jvm/java
export JAVA_HOME=/usr/$__libdir/jvm/java
#....cut for brevity...
Respuesta2
Para habilitar el cambio que ha realizado en el archivo ~/.bashrc, debe ejecutar el comando mencionado en el archivo ~/.bashrc. Para ello hay que cerrar la terminal y volver a abrirla.