Problem
Ich habe eine virtuelle Ubuntu 11.04-Maschine und wollte meine Java-Entwicklungsumgebung einrichten. Ich habe folgendes getan
sudo apt-get install openjdk-6-jdk
Die folgenden Einträge wurden zu ~ / .bash_profile hinzugefügt
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk export PATH=$PATH:$JAVA_HOME/bin
Speichern Sie die Änderungen und beenden Sie das Programm
Öffnen Sie erneut ein Terminal und geben Sie Folgendes ein
echo $JAVA_HOME (blank) echo $PATH (displayed, but not the JAVA_HOME value)
Es ist nichts passiert, als ob der Export von JAVA_HOME und seiner Hinzufügung zum PATH niemals durchgeführt worden wäre.
Lösung
Ich musste zu ~ / .bashrc gehen und den folgenden Eintrag gegen Ende der Datei hinzufügen
#Source bash_profile to set JAVA_HOME and add it to the PATH because for some reason is not being picked up
. ~/.bash_profile
Fragen
- Warum musste ich das tun? Ich dachte, bash_profile, bash_login oder profile in Abwesenheit dieser beiden werden zuerst vor bashrc ausgeführt.
- War in diesem Fall mein Terminal eine Nicht-Login- Shell?
- Wenn ja, warum führte su nach dem Terminal und dem Einfügen des Passworts kein Profil aus, bei dem ich auch die oben genannten Exporte eingestellt hatte?