尝试使用Cygwin在我的机器上设置Hadoop 2.4.1,当我尝试运行时卡住了
$ hdfs namenode -format
给了我
Error: Could not find or load main class org.apache.hadoop.hdfs.server.namenode.NameNode
我认为这是由于未定义的环境变量,因为我可以运行
$ hadoop version
没有问题。我已经定义了以下内容:
JAVA_HOME
HADOOP_HOME
HADOOP_INSTALL
以及将Hadoop \ bin和\ sbin(以及Cygwin' s \ bin)添加到Path。我错过了我需要定义的环境变量吗?
答案 0 :(得分:0)
好的,看起来像hadoop \ bin \ hdfs这样的文件也必须像hadoop \ bin \ hadoop文件一样进行更改here。
必须从以下位置更改文件末尾:
exec "$JAVA" -Dproc_$COMMAND $JAVA_HEAP_MAX $HADOOP_OPTS $CLASS "$@"
到
exec "$JAVA" -classpath "$(cygpath -pw "$CLASSPATH")" -Dproc_$COMMAND $JAVA_HEAP_MAX $HADOOP_OPTS $CLASS "$@"
我假设当我开始使用这些文件时,我必须对hadoop \ bin \ mapred和hadoop \ bin \ yarn进行类似的更改。