您的位置:首页 > 运维架构

在windowxp下使用Cygwin安装Hadoop问题总结

2013-05-22 21:59 281 查看

1。右键点击我的电脑,在属性面板里,配置环境变量。正确的配置了JAVA_HOME,并且把将JDK的bin目录添加到了path中.

2。下载并安装Cygwin,然后将D:\cygwin\bin和D:\cygwin\usr\sbin 以及D:\cygwin\usr\i686-pc-cygwin添加到path中

3。下载Hadoop,我使用的是hadoop-1.1.2.0版本,之后按照《在Windows上安装Hadoop教程》中所说的,将一系列的配置文件复制到Hadoop的conf目录下面,然后修改hadoop-env.sh,只需要修改文件中设置JAVA_HOME的部分,此时就会出现几个问题:

比如:我一开始export JAVA_HOME=C:\Program Files\java\jdk ,这样配置其实会出现两个错误,首先,Unix不支持Program Files里的空格,解决办法,如下几种:

(1):很笨但最彻底,我们需要重新安装JDK,把它安装在D:\Java中。

(2):给路径加上引号。export JAVA_HOME=“C:\Program Files\java\jdk”(

(3): 我们不能直接 写window的路径,应该改成/cygdrive/d/Java/jdk1.6.0_18

(4):如果还是有空格Program Files,不能写成/cygdrive/d/Program Files/Java/jdk1.6.0_18,但可以把Program Files写成Progra~ 就是export JAVA_HOME=C:\Progra~\java\jdk1.6.0_18” 这是刘鹏老师《实战hadoop》里的方法

无论怎么写, 最终尤其要注意,把原来配置文件里的“ #export JAVA_HOME=。。。。。” 里的# 去掉。否则一样失败。

到这一步之后,直接运行Hadoop就会成功了,

如果提示找不到Java/jdk1.6.0_18/bin/java, 需要使用dos2unix将hadoop-env.sh重新编译一下,照着做了,但是问题还是没有解决,还是提示找不到java。最后偶然发现有人说 可以先在Cygwin中创建一个指向JAVA_HOME的软连接,之后修改hadoop-env.sh中的JAVA_HOME使其指向创建的软连接,这样问题最终解决了。

在/usr/local中执行如下的命令:

ln -s D:/Java/jdk1.6.0_18 jdk1.6.0_18

之后ls,就会看到新建的软连接了,最后修改hadoop-env.sh中的配置。

export JAVA_HOME=/usr/local/jdk1.6.0_18
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: