Windows上的Hadoop – “Error JAVA_HOME is incorrectly set。”

我试图让Hadoop在Windows机器上运行“本地模式”。 我一直在用这个来指导我: http : //hadoop.apache.org/docs/r1.2.1/single_node_setup.html

当我运行命令:bin / hadoop,我得到以下错误信息:“错误:JAVA_HOME设置不正确,请更新C:… \ hadoop-2.7.1 \ conf \ hadoop-env.cmd”

里面的'hadoop-env.cmd',我有行:set JAVA_HOME =%JAVA_HOME%

请注意,当我在命令行inputecho%JAVA_HOME%时,我得到:C:\ Java \ jdk1.0.8_51。

即使我将“hadoop-env.cmd”中的行更改为:set JAVA_HOME = C:\ Java \ jdk1.0.8_51我也得到相同的错误…

怎么可能是我的JAVA_HOME设置不正确?

如果您的JAVA_HOME路径包含空格,则必须使用Windows 8.3路径名

在conf \ hadoop-env.cmd中使用“%JAVA_HOME%”

如果你的java环境路径包含空格,例如“C:\ Program Files \ java \ xxxxx”,则“Program Files”一词包含一个空格,所以CMD不能识别

这是正确的答案

在hadoop-config.xml中,逻辑是

如果不存在%JAVA_HOME%\ bin \ java.exe(echo错误:JAVA_HOME设置不正确。echo请更新%HADOOP_HOME%\ conf \ hadoop-env.cmd goto:eof)

如果你的java环境路径包含空格 ,例如“C:\ Program Files \ java \ xxxxx”,则“Program Files”一词包含一个空格 ,所以CMD不能识别

所以你可以改变路径。