0

谈到 Ubuntu,我还是个新手,但我正在尝试按照此处的 Cloudera 安装说明进行操作。

在第 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。

4

2 回答 2

3

我遇到了同样的问题,只需将JAVA_HOME="directory_to_JDK"设置添加到 中/etc/environment,它就可以工作。

于 2013-05-27T18:07:02.370 回答
2

JAVA_HOME 是为您的进程定义的,但不是为sudo正在运行的进程定义的。 exportJAVA_HOME 定义。我不记得语法,但我相信它类似于export JAVA_HOME=/drive/dir1/dir2/java

如果这不起作用,可以在系统级别为所有进程定义 JAVA_HOME。好久不见了,不记得怎么样了。但希望这里有足够的内容可以让您使用 Google。

这是关于导出的 SO 链接。

于 2013-01-05T15:08:59.487 回答