4

我正在尝试使用命令运行所有 hadoop 守护进程

./start-all.sh

从主主机集群。由于执行了几次

starting namenode, logging to /export/hadoop-1.0.1/libexec/../logs/hadoop--namenode-one.out
192.168.1.10: starting datanode, logging to /export/hadoop-1.0.1/libexec/../logs/hadoop-hadoop-datanode-myhost2.out
192.168.1.10: Error: JAVA_HOME is not set.

甚至在虚拟机上执行到 192.168.1.10 命令的地址后也发生了几次

hadoop@myhost2:~$ export JAVA_HOME=/opt/jdk1.7.0_06

告诉请一劳永逸地修复 JAVA_HOME 变量的严格程度。

4

3 回答 3

1

将该行export JAVA_HOME=/path/to/java放在 start-all.sh 脚本的开头,这样就可以了。

于 2013-02-15T17:11:15.880 回答
1

$ vi ~/.bash_proflle

将此行附加到文件中

export JAVA_HOME=/opt/jdk1.7.0_06

JAVA_HOME这将对环境变量进行永久性更改。

于 2013-02-15T17:11:23.500 回答
1

你也应该在文件中设置JAVA_HOME 。hadoop-env.sh这是在$HADOOP_INSTALL/hadoop/confhadoop的目录中。默认情况下 JAVA_HOME 设置行被注释

hadoop-env.sh - 此文件包含 Hadoop 使用的一些环境变量设置。您可以使用这些来影响 Hadoop 守护程序行为的某些方面,例如存储日志文件的位置、使用的最大堆数量等。您应该在此文件中更改的唯一变量是 JAVA_HOME

或者您可以将其添加到 hadoop 帐户中的以下文件中。

~/.bash_proflle
于 2013-02-15T17:12:52.010 回答