线程"main"中的异常java.lang.UnsupportedClassVersionError,不支持的major.minor版本52.0

geo*_*a_e 23 java hadoop

我试图在hadoop - 1.0.4上运行WordCount示例,我收到以下错误:

Exception in thread "main" java.lang.UnsupportedClassVersionError: WordCount :
Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    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)
Run Code Online (Sandbox Code Playgroud)

我使用以下java版本:

java version "1.7.0_11"
Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
Java HotSpot(TM) Server VM (build 23.6-b04, mixed mode)
Run Code Online (Sandbox Code Playgroud)

JAVA_HOME也表示java7安装目录.

谢谢你的帮助.

Sur*_*tta 19

好像您正在使用JDK8进行编译,而较低版本则使用它的位置.

所以

假设使用eclipse, Window > Preferences > Compiler > compiler level

然后设置较低级别(<当前一级).

  • 我改变了编译级别后,它工作了.非常感谢. (2认同)