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
JDK版本错误:Unsupported major.minor version 51.0的更多相关文章
- maven-javadoc-plugin 出现错误Unsupported major.minor version 51.0
[INFO] --- maven-javadoc-plugin:3.0.0:jar (attach-javadocs) @ eii-frame-sms ---[WARNING] Error injec ...
- 第04篇 JDK版本导致Unsupported major.minor version 52.0 error
一直以来,想改变一些自己早已经习惯的事情. 感谢吕希德同学,让我又解决了一个问题! 出现问题原因-->>分析 { JDK版本不一致的问题 } 在eclipse中开发的项目有个Java bu ...
- JavaWeb-tomcat安装(Unsupported major.minor version 51.0/startup.bat闪退)
JavaWeb-tomcat安装(Unsupported major.minor version 51.0) 一 启动startup.bat 出错i 今天安装tomcat出错,折腾了一下午,收获了许多 ...
- 错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法
错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法 java.lang.UnsupportedClassVersionError: org/ap ...
- Java进阶(十二)JDK版本错误之Unsupported major.minor version 51.0(jdk版本错误)
错误:Unsupported major.minor version 51.0(jdk版本错误) 如果在win7下开发项目是使用的jdk版本和项目运行服务器jdk版本不同就会出现上面的问题. 用jdk ...
- 错误:Unsupported major.minor version 51.0(jdk版本错误)
Java.lang.UnsupportedClassVersionError: org/apache/nutch/crawl/Crawl3 : Unsupported major.minor vers ...
- Unsupported major.minor version 51.0 在配置/运行Maven工程时,JDK与Maven所引用的jdk版本不一致
在配置Maven工程,部署到tomcat服务器运行的过程中,遇到如下错误: "Unsupported major.minor version 51.0 " 错误原因是由于maven ...
- maven与jdk版本不一致报:Unsupported major.minor version 51.0
I recently uninstalled Java 8, to use Java 6 as I want my code/creations to be usable by more people ...
- 记一次jdk升级引起的 Unsupported major.minor version 51.0
之前jdk 一直是1.6,tomcat 是6.x 版本,, 现在引入的新的jar, 出现 Caused by: java.lang.UnsupportedClassVersionError: org/ ...
随机推荐
- Example_07_05录音提示open failed: EACCES (Permission denied)
在AndroidManifest.xml文件中加入下面这句话:<uses-permission android:name="android.permission.WRITE_EXTER ...
- Navicat:cant create OCI environment.
一直在使用 Navicat ,这是一个数据库客户端软件,能连接多种不同类型的数据库,给我们的日常的工作带来了不少的便捷. 最近,我在电脑上安装了oracle的客户端ODTwihtODAC121012, ...
- \r \n有什么区别
'\r'是回车,'\n'是换行,前者使光标到行首,后者使光标下移一格.通常用的Enter是两个加起来.下面转一篇文章. 回车和换行 今天,我总算搞清楚“回车”(carriage return)和“换行 ...
- C#基础学习第二天(.net菜鸟的成长之路-零基础到精通)
1.加号的使用 在我们c#当中,如果想要两个字符串相连接,那么我们可以使用+号连接. 加号两边如果有一边是字符串,那么此时字符串起到了一个连接的作用. 如果加号两遍都是数字,那么加号起到一个相加 ...
- gui界面2048小游戏
坑的地方 JLabel色块要调透明 方向键要用press方法 主界面 package game; import java.awt.BorderLayout; import java.awt.Event ...
- IO流(文件字节输入输出
输入输出流可能有不允许操作,可能有出现错误,必须在try语句中进行 FileOutputStream out1=new FileOutputStream("test1.txt") ...
- error: expected constructor, destructor, or type conversion before '.' token
今天写代码是遇到这样一个问题error: expected constructor, destructor, or type conversion before '.' token:立马网上查,原来是 ...
- C++采用模板实现栈的方法
今天又看了遍<effective C++>,手动实现了一下条款42中的栈,贴出来当博客的处女贴. 首先栈的声明如下,采用了模板传入类型,而栈的底层采用是个链表. // stack.h // ...
- 在thread 引用pthread_t 空指针的问题
错误 pthread_t *thr; pthread_create(thr,NULL,threadhander(),NULL); 正确 pthread_t thr; pthread_create(&a ...
- JS浏览器关闭时清空cookie
function addCookie(objName,objValue,objHours){ var str = objName + "=" + escape(objValu ...