问题
我有一个Ubuntu 11.04虚拟机,我想设置自己的Java开发环境。我做了如下
sudo apt-get install openjdk-6-jdk
在〜/ .bash_profile中添加了以下条目
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk export PATH=$PATH:$JAVA_HOME/bin
保存更改并退出
再次打开终端并输入以下内容
echo $JAVA_HOME (blank) echo $PATH (displayed, but not the JAVA_HOME value)
什么也没发生,就像从未执行过JAVA_HOME的导出及其对PATH的添加一样。
解
我不得不转到〜/ .bashrc并将以下条目添加到文件末尾
#Source bash_profile to set JAVA_HOME and add it to the PATH because for some reason is not being picked up
. ~/.bash_profile
问题
- 为什么我必须这样做?我认为bash_profile,bash_login或profile在缺少这两个文件之前先在bashrc之前执行。
- 在这种情况下,我的终端是否为非登录外壳?
- 如果是这样,为什么在终端之后执行su并输入密码时,为什么我执行了上述导出操作的地方没有执行配置文件?