我正在使用Ubuntu 12.04 LTS。
我正在按照hadoop快速入门手册进行伪分布式操作。这看起来非常简单和直接(易!)。
然而,当我尝试运行start-all.sh
时,我得到了以下提示:
localhost: Error: JAVA_HOME is not set.
我已经阅读了stackoverflow上的所有关于这个问题的建议,并采取了以下措施来确保JAVA_HOME
已设置:
在/etc/hadoop/conf/hadoop-env.sh
中,我已经设置了:
JAVA_HOME=/usr/lib/jvm/java-6-oracle
export JAVA_HOME
我已经在/etc/bash.bashrc
中设置了
JAVA_HOME=/usr/lib/jvm/java-6-oracle
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
export PATH
which java
返回:
/usr/bin/java
java -version
命令可以运行。
echo $JAVA_HOME
返回:
/usr/lib/jvm/java-6-oracle
我甚至尝试成为root用户并在终端中明确地写入:
$ JAVA_HOME=/usr/lib/jvm/java-6-oracle
$ export JAVA_HOME
$ start-all.sh
如果你能向我展示如何解决这个错误,我将非常感激。
我认为我的 JAVA_HOME
被某种方式覆盖了。如果是这样的话,你能否向我解释如何使我的导出全局化?