1

我在 Eclipse 上搞乱了 JRE 设置。最初项目设置为 1.6,当设置为 1.7 时,我的程序开始显示很多错误。所以当我切换回 1.6 时,所有编译时错误都消失了,但我现在遇到了一个新问题。当我尝试运行包含主函数的启动类时,这显示在控制台上。.class 文件都存在。请指教。

java.lang.UnsupportedClassVersionError: Demo : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(Unknown Source)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.access$000(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
Exception in thread "main" 
4

2 回答 2

5

版本 51.0 意味着仍然是使用 Java 7 编译的类文件。这些文件不会使用 JRE 6 运行。您必须先重新编译它们(重建项目或使用 ant/maven 进行干净编译)。

于 2013-03-23T11:10:19.200 回答
1

检查 Java 版本是否在您的 Java 构建路径和项目属性中的 Java 编译器中匹配。我认为您使用 1.6 编译并尝试使用 java 1.7 运行

于 2013-03-23T11:10:55.970 回答