• JDK版本错误:Unsupported major.minor version 51.0


    错误原因

    有时候把项目从本机编译文件部署到服务器,或者发给别人使用时,会报如下异常:

    java.lang.UnsupportedClassVersionError: test_hello_world :

    Unsupported major.minor version 51.0

    at java.lang.ClassLoader.defineClass1(Native Method)

    at java.lang.ClassLoader.defineClassCond(Unknown Source)

    .........................................

    这个错误时因为JDK版本的问题,比如本机的JDK为1.6,但是项目编译时用的JDK为1.7那么就会出现这个异常,因为本机JDK版本较低不能执行编译版本为高版本的Class文件,各JDK版本对应的错误编号如下:

    J2SE 8 = 52,

    J2SE 7 = 51,

    J2SE 6.0 = 50,

    J2SE 5.0 = 49,

    JDK 1.4 = 48,

    JDK 1.3 = 47,

    JDK 1.2 = 46,

    JDK 1.1 = 45

    解决办法

    Eclipse/Myeclipse

    步骤一:

    修改Eclipse/Myeclipse JDK版本:

    Window à Preference à Java à Installed JREs

    在相应的JDK版本前面打钩

    步骤二:

    修改项目的JDK编译版本

    项目右键 à Java Compiler

    修改JDK编译版本

    步骤三(关键):

    因为我们一般是从Web容器(Tomcat、Resin等)中Copy编译文件上传服务器,所以这一步尤为重要,需要修改Web容器使用的JDK版本

    Window à Preference à Myeclipse à Servers à Resin à Resin3.x à JDK

    这样就搞定了。

    这三个JDK版本最好保持一致。

    手动编译

    这个只是在少量class文件时适用:

    javac -target 1.4 HelloWorld.java

  • 相关阅读:
    5G和物联网:面临各种安全挑战的新兴技术
    嵌入式Linux系统的几大组件!
    物联网应用开发如何平衡用户体验与隐私安全?
    我们需要什么数据架构?
    2020.7.30
    2020.7.29
    2020.7.28
    2020.7.27
    2020.7.26 + 周报(3)
    2020.7.25
  • 原文地址:https://www.cnblogs.com/edwinchen/p/3979586.html
Copyright © 2020-2023  润新知