Problème
J'ai une machine virtuelle Ubuntu 11.04 et je voulais configurer mon environnement de développement Java. J'ai procédé comme suit
-
sudo apt-get install openjdk-6-jdk
-
Les entrées suivantes ont été ajoutées à ~/.bash_profile
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk export PATH=$PATH:$JAVA_HOME/bin
-
Enregistrez les modifications et quittez
-
Ouvrez à nouveau un terminal et tapez ce qui suit
echo $JAVA_HOME (blank) echo $PATH (displayed, but not the JAVA_HOME value)
-
Rien ne s'est produit, comme si l'exportation de JAVA_HOME et son ajout au PATH n'avaient jamais été effectués.
Solution
J'ai dû aller à ~/.bashrc et ajoutez l'entrée suivante vers la fin du fichier
#Source bash_profile to set JAVA_HOME and add it to the PATH because for some reason is not being picked up
. ~/.bash_profile
Questions
- Pourquoi ai-je dû faire ça ? Je pensais que bash_profile, bash_login ou profile en l'absence de ces deux-là étaient exécutés en premier avant bashrc.
- Dans ce cas, mon terminal était un non-login Shell ?
- Si c'est le cas, pourquoi en faisant su après le terminal et en mettant le mot de passe, il n'a pas exécuté le profil où j'avais également défini les exportations mentionnées ci-dessus ?