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 原文链接 |
|