对于Ubuntu,我是新手,但我正在尝试按照Cloudera位于here的安装说明进行操作。
在第1步,我遇到以下错误:
brock@brock-hpserver:~$ sudo -u hdfs hdfs namenode -format
Error: JAVA_HOME is not set and could not be found.
然而,虽然我错了,但我相信我已经准备好了所有东西:
brock@brock-hpserver:~$ echo $JAVA_HOME
/usr/lib/jvm/java-6-openjdk-amd64
brock@brock-hpserver:~$ echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:JAVA_HOME/bin
最后我的java版本:
brock@brock-hpserver:~$ java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.04.1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
任何帮助将不胜感激。我只是想在家里的备用机器上学习Hadoop。
答案 0 :(得分:3)
我遇到了同样的问题,只需将JAVA_HOME="directory_to_JDK"
设置添加到/etc/environment
,就可以了。
答案 1 :(得分:2)
JAVA_HOME是为您的流程定义的,但不适用于sudo
正在运行的流程。 export
JAVA_HOME定义。我不记得语法,但我相信它与export JAVA_HOME=/drive/dir1/dir2/java
如果这不起作用,可以在系统级别为所有进程定义JAVA_HOME。已经很久了,我不记得是怎么回事。但希望这里有足够的内容让你加入Google。