1

我正在尝试hadoop 1.1.2使用cygwin.
从在线视频和教程中,我已经设置了几乎所有内容。
现在的问题是当我尝试使用命令创建文件夹时

cd /usr/local/hadoop-1.1.2/bin         --> this works proper and set proper path then
./hadoop dfs -mkdir input      --> when this execute i get error

在错误中,我得到与JAVA_HOME路径相关的问题没有正确设置,还向我显示/Java/jre7/bin/bin/java看起来错误路径的文本。

但我在JAVA_HOME这里正确设置了路径,

在此处输入图像描述

/binpath变量中设置了相同的路径。
我不知道我在哪里犯了错误。

编辑
完整错误

./hadoop: line 320: C:/Java/jre7/bin/bin/java: No such file or directory
./hadoop: line 390: C:/Java/jre7/bin/bin/java: No such file or directory
./hadoop: line 390: exec: C:/Java/jre7/bin/bin/java: cannot execute: No such file or directory
4

3 回答 3

4

其解决方案的问题

1. JAVA PATH ISSUE

首先是JAVA_PATHissue

注意:必须使用JDKnot JRE
对于 Hadoop,尝试使用不带空格的文件夹名称

在环境变量中

JAVA_HOME = C:\Java\jdk1.7.0_25

path变量中添加下面的代码和其他带有分离的;代码

%JAVA_HOME%\bin

在文件中(如果您使用的是 Windows 机器,则hadoop-env.sh可以从中找到此文件)。C:\cygwin\usr\local\hadoop-1.1.2\conf

请注意,#从行首删除并\\在文件中使用两次

导出 JAVA_HOME=C:\\Java\\jdk1.7.0_25

如果 JAVA_PATH 一切正常,您可以从 consol 中检查CYGWIN尝试
以下代码以获取javaPathhadoop使用的代码

回声 $JAVA_HOME

在这里您将获得 java 版本路径
也可以从运行时设置,请在treminalJAVAPATH上尝试以下代码CYGWIN

导出 JAVA_HOME=C:/JAVA/Jdk1.7.0_25

2. 用户问题

首先请注意,当您开始hadoop安装时,请使用相同USER的 forMASTERSALVE

如果您有不同的用户,则必须生成一个带有名称的额外文件config(不带扩展名)

如果您的MASTER's机器名称是jubin-pc并且用户名是jubinp并且SLAVES机器名称是trainees11并且用户名是trainees(必须对两者进行反之亦然)

配置文件(用于 MASTER) 位置C:\cygwin\home\jubinp\.ssh\

Host trainees11
User trainees

配置文件(用于 SLAVE)位置C:\cygwin\home\trainees\.ssh\

Host jubin-pc
User jubinp
于 2013-07-01T13:47:03.447 回答
2

hadoop-2.6.0 及早期的解决方案:

  1. 确保 JDK 的路径不包含退格键。
    (我的变体C:\Java\jdk1.8.0_25
  2. JAVA_HOME添加到路径
    • 我的电脑 -> 属性 -> 高级 -> 环境变量 -> 创建
      JAVA_HOME
      C:\Java\jdk1.8.0_25
    • 添加;%JAVA_HOME%\bin到系统路径
  3. 打开hadoop-env.sh
    (它位于我的 hadoop-2.6.0 的 C:\hadoop-2.6.0\etc\hadoop 中)
    并添加行export JAVA_HOME=C:/Java/Jdk1.8.0_25
于 2015-01-29T10:26:15.547 回答
0

退出赛格温。

您的 JAVA 的 bin 文件夹的路径包含在另一个名为 bin 的文件夹中?我不这么认为。

在没有空格的路径中正确安装 JDK(不是 JRE)。例如 :C:\jdk1.7.0_21

在 Windows 中:将环境变量 JAVA_HOME 添加到C:\jdk1.7.0_21 然后,添加JAVA_HOME/bin到您的 PATH。

编辑 hadoop/conf/hadoop-env.sh :取消注释 JAVA_HOME 导出。对于我的例子:

export JAVA_HOME=/cygdrive/c/jdk1.7.0_21/
于 2013-07-01T13:28:01.950 回答