hadoop在与cygwin noclassdefinition窗口中发现错误

我正在尝试在我的Windows 7环境中安装hadoop,并使用cygwin运行它。 我已经下载并安装了cygwin,并configuration了ssh我已经设置了cygwin.bashrc中的java类path,并设置了所有的hadoopconfiguration文件我的.bashrc文件被列出

export JAVA_HOME="C:\\Program Files\\Java\\jdk1.6.0_24" export HADOOP_HOME=/home/user/hadoop export HADOOP_MAPRED_HOME=/home/user/hadoop export HADOOP_COMMON_HOME=/home/user/hadoop export HADOOP_HDFS_HOME=/home/user/hadoop export YARN_HOME=/home/user/hadoop export HADOOP_CONF_DIR=/home/user/hadoop/etc/hadoop 

但得到类没有发现错误,当我运行下面的命令cygwinterminal上的错误是:

 $ ./hadoop version java.lang.NoClassDefFoundError: org/apache/hadoop/util/VersionInfo Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.VersionInfo at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:248) Could not find the main class: org.apache.hadoop.util.VersionInfo. Program will exit. Exception in thread "main" 

为什么我得到一个noclass定义发现错误,还有一些事情我需要做configuration。 我正在使用Windows 7 64位和hadoop版本2.2.0

Solutions Collecting From Web of "hadoop在与cygwin noclassdefinition窗口中发现错误"

一些技巧:

  1. 在一个文件夹中安装JDK,路径必须没有任何空格。
  2. 像这样设置路径:

     $ export JAVA_HOME=/cygdrive/c/Program_Files/Java/jdk1.7.0_71 
  3. 确保导出成功通过执行:

     $ env | grep -i JAVA_HOME 

    这应该打印:

     JAVA_HOME=/cygdrive/c/Program_Files/Java/jdk1.7.0_71 
  4. 如果你想看到版本,只需执行:

     sh -x bin/hdfs version 
  5. 使用sh -x运行.sh脚本:

     sh -x bin/hdfs namenode -format