问题
我有一个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并输入密码时,为什么我执行了上述导出操作的地方没有执行配置文件?