在Cygwin上配置Hadoop的Java_home,首先到了${HADOOP_HOME}的conf目录下,修改hadoop-env.sh文件。主要分为如下几步:
1. 找到JAVA_HOME,修改JAVA_HOME的路径指向你本机安装的Jdk路径。注意,这里的路径不能以window的路径出现,应该用unix的形式出现,例如c:\Program Files\Java\jdk1.6.0,应该写成/cygdrive/c/Program Files/Java/jdk1.6.0.而且,还有一点要注意的是,如果路径有空格,如Program Files间的空格,则应该将路径用双引号括起("/cygdrive/c/Program Files/Java/jdk1.6.0")。
2. 修改完hadoop-env.sh文件后,如果马上启动Hadoop,仍会报错,出现“/bin/java: No such file or directoryva/jdk1.6.0_10 ”的错误。经过上网查证,发现是dos环境与Unix的字符编码的问题,可以用dos2unix来实现 DOS <=> UNIX text file 转换。所以切换到conf目录下,对hadoop-env.sh进行Unix文本转化:dos2unix hadoop-env.sh.如此就可以正常启动Hadoop了!