2013-02-01 12 views
4

我在Hadoop中1.1.1創造了單詞計數一個jar文件,同時運行數世界它給我以下錯誤:Hadoop的單詞計數Unsuppored MAJOR.MINOR版本51.0 ERROR

[email protected]:/usr/local/hadoop$ bin/hadoop jar playground/wordcount.jar org.apache.hadoop.examples.WordCount /user/input/playground /user/output1 
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/hadoop/examples/WordCount : Unsupported major.minor version 51.0 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:634) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) 
    at java.net.URLClassLoader.access$000(URLClassLoader.java:73) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:212) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:264) 
    at org.apache.hadoop.util.RunJar.main(RunJar.java:149) 
+1

嘗試檢查java版本。如果你使用java 1.7,請嘗試使用java 1.6。 – alnasfire

+0

你正在編譯哪個Hadoop庫? – aa8y

+0

我在hadoop-env.sh中配置了java-6-openjdk,我使用的是Hadoop版本1.1.1。 – Ananda

回答

7

此錯誤來當你的Hadoop系統運行較之用於編譯MapReduce代碼的Java版本更低。

您的Hadoop系統與系統,您使用「Java的版本」編譯代碼的檢查的Java版本。

+0

Java版本是我的情況下的問題 – CRM

0

錯誤是因爲您正在編譯的計算機上的jdk不匹配以及您正在運行該jar的機器。匹配兩個版本的jdk。

相關問題