我在编译 Hadoop 附带的 Word Count Map Reduce 示例时遇到问题。
我收到以下错误:
WordCount.java:6:无法访问 org.apache.hadoop.fs.Path 坏类文件:/home/john/Apps/hadoop-1.0.4/hadoop-core-1.0.4.jar(org/apache/hadoop/ fs/Path.class) 类文件有错误的版本 50.0,应该是 49.0
我很清楚这表明我使用了错误版本的 Javac 来编译代码。但是,我已经更新到最新版本的 Sun Java 6 JDK,我明确地这样称呼它:
/usr/lib/jvm/jdk1.6.0_43/bin/javac -classpath ${HADOOP_HOME}/${HADOOP_CORE_JAR} -d wordcount_classes WordCount.java
我仍然得到这个错误。这对我来说没有意义。我没有使用 Java 5 编译器,那么为什么 javac 坚持我应该使用版本为 49.0 的类?
注意:运行 /usr/lib/jvm/jdk1.6.0_43/bin/javac -version 的输出是:
javac 1.6.0_43
javac: no source files
其次是使用说明。