首页 文章

线程“main”中的异常java.lang.UnsupportedClassVersionError:a(不支持的major.minor版本51.0)[重复]

提问于
浏览
82

可能重复:不支持的主要.minor版本51.0

我安装了JDK7,一个简单的hello word程序得到编译,但是当我运行它时,我得到了以下异常 .

Exception in thread "main" java.lang.UnsupportedClassVersionError: a (Unsupported major.minor version 51.0)
    at java.lang.ClassLoader.defineClass0(Native Method)
    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$100(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)
    at java.lang.ClassLoader.loadClassInternal(Unknown Source)

我在命令提示符下检查了 java -version ,它显示了Java版本1.4.2_03,但是当我尝试从java.com安装新的java版本时,它说我推荐了Java 7版本 .

5 回答

  • 2

    将PATH设置的内容复制到记事本,并检查1.4.2的位置是否在7之前 . 如果是,请在PATH设置中删除1.4.2的路径并保存 .

    保存并应用“环境变量”后关闭并重新打开cmd行 . 在XP中,路径不会反映在已经运行的程序中 .

  • 35

    从命令行尝试 sudo update-alternatives --config java 以设置要使用的JRE的版本 . 这应该解决它 .

  • 9

    假设您使用的是Eclipse,您可以:

    • 启动 Eclipse.app

    • 选择 Eclipse -> Preferences

    • 选择 Java -> Installed JREs

    • 单击 Add... 按钮

    • 选择 MacOS X VM 作为JRE类型 . 按Next .

    • 在"JRE Home:"字段中,键入 /Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home

    • 您应该在 Headers 为"JRE system libraries:"的列表中看到系统库

    • 为JRE命名 . 建议名称为 JDK 1.7 . 单击完成 .

    • 选中刚刚创建的JRE条目旁边的复选框 . 这将导致Eclipse将其用作所有新Java项目的默认JRE . 单击确定 .

    • 现在,创建一个新项目 . 对于此验证,请从菜单中选择 File -> New -> Java Project .

    • 在出现的对话框中,输入项目的新名称 . 对于此验证,请键入Test17Project

    • 在对话框的JRE部分中,选择 Use default JRE (currently JDK 1.7)

    • 单击“完成” .

    希望这可以帮助

  • 71

    在Java 6旁边安装jdk7之后我遇到了这个问题 . 使用 update-alternatives --config java 到jdk7正确更新了二进制文件,但 $JAVA_HOME 环境变量仍然指向Java 6的旧目录 .

  • 8

    听起来你需要更改 java 可执行文件的路径以匹配最新版本 . 基本上,安装最新的Java并不一定意味着您的机器配置为使用最新版本 . 我没有说完所有的话 .

相关问题