一、错误现象:

当改变了jdk版本时,在编译java时,会遇到Unsupported major.minor version错误。
错误信息如下 :

Unsupported major.minor version 50.0
Unsupported major.minor version 49.0 (我在jdk1.4 和1.5切换时就遇到了这个错误)
Unsupported major.minor version 48.0

二、错误原因:

类似错误均属于Java版本问题,即JDK版本过低,只要选择相对应的JDK版本编译即可。
48,49,50是Java编译器内部的版本号:
Unsupported major.minor version 50.0 对应于 JDK1.6(JRE1.6)
Unsupported major.minor version 49.0 对应于 JDK1.5(JRE1.5)
Unsupported major.minor version 48.0 对应于 JDK1.4(JRE1.4)

三、出错过程:

我先描述一下我出错的过程,这样方便大家解决问题。

我用的是eclipse,在windows下调试的,是从jkd1.4升级到1.5后出现了该错误。
我是这么升级到1.5的:
(1)把在系统环境变量中把jdk的版本升级到了1.5,并在命令提示符下用 java -version 显示了一下jdk版本,是1.5的。
(2)在eclipse中 Window -> Preferences -> Java -> Compiler
然后在右侧窗口中,有个 Compiler compiance level: 就是指定jdk的版本,原来是1.4
,现在选择5.0也就是jdk1.5。确定时弹出个对话框,提示改变了jdk版本,是否要立刻重新编译。点yes。eclipse会重新编译。【 图 1

(3)Project -> Properties -> Java Compiler 右侧窗口也有个 Compiler compiance level: 原来是1.4把它也改成5.0的。也会弹出对话框,同样选yes。【 图 2 】

(4)写了个Test类,执行是出现了错误:
java.lang.UnsupportedClassVersionError:
(Unsupported major.minor version 49.0)

(5)我重启eclipse问题依旧

至此,出错过程描述完毕。

四、解决办法:

仅仅按照网上说的设置JAVA_HOME 等方案是不能解决问题的。

下面是我的解决办法:
既然环境变量中和eclipse中都设置了jdk1.5的版本,为何还报错呢。
肯定是哪个地方还有设置。

(1)Project -> Properties ->Java Build Path 右侧窗口 -> Libraries 在列表里显示的竟然还是jdk1.4(是myEclipse5自带的。) 。
(2)将jdk1.4相关条目选中,然后点右侧按钮 Remove ,将jdk1.4删除。【 图 3 】

(3)点右侧 Add Library 弹出对话框,选中jdk1.5的条目,我这里显示的是 JRE System Library 然后点击next。 【 图 4 】

(4) 在第三步弹出的对话框上,激活 Alternate JRE 选项,并在下拉列表中,选择 jdk1.5 然后点Finish。【 图 5 】

(5)在第四步完成后,从Libraries 选项卡切换到 Order and Export 选项卡,并在jar列表中选中 JRE System Library[jdk1.5] 然后 点 ok完成设置。【 图 6 】

(6)如果你的Eclipse设置成了自动编译,应该就可以了,否则重新编译一下。

五、总结

根本原因还是开发环境中 jdk 环境变量的设置。
MyEclipse它自带个jdk1.4
所以如果你也安装了myEclipse插件,最好别用myEclipse的jdk(它带很多额外包,调试过程没问题,结果发布后会有少jar包的可能),要用自己安装的。要确保java complier与complier一致

Unsupported major.minor version ,的更多相关文章

  1. Unsupported major.minor version (jdk版本错误)解决方案 办法

    如果你遇到了 Unsupported major.minor version ,请认真看一下,说不定会有帮助. 我花两个小时总结的经验,你可能10分钟就得到了. ^**^ 一.错误现象: 当改变了jd ...

  2. Unsupported major.minor version 51.0 在配置/运行Maven工程时,JDK与Maven所引用的jdk版本不一致

    在配置Maven工程,部署到tomcat服务器运行的过程中,遇到如下错误: "Unsupported major.minor version 51.0 " 错误原因是由于maven ...

  3. CXF错误:Unsupported major.minor version 51.0,java.lang.UnsupportedClassVersionErro

    CXF错误:Unsupported major.minor version 51.0 java.lang.UnsupportedClassVersionError >>>>&g ...

  4. unsupported major.minor version 52.0,错误

    Make sure that all the classes needed by the application have been compiled with a compatible java v ...

  5. Elasticsearch 安装的时候,Unsupported major.minor version 51.0问题的解决

    Elasticsearch安装的时候报错 bootstrap/Elasticsearch : Unsupported major.minor version 51.0 网上一般说的方法是,升级或者降级 ...

  6. 运行Tomcat闪退问题,报的错误:Unsupported major.minor version 51.0

    在MyEclipse中运行tomcat,tomcat闪退并且报以下错误. java.lang.UnsupportedClassVersionError: org/apache/catalina/sta ...

  7. 记一次jdk升级引起的 Unsupported major.minor version 51.0

    之前jdk 一直是1.6,tomcat 是6.x 版本,, 现在引入的新的jar, 出现 Caused by: java.lang.UnsupportedClassVersionError: org/ ...

  8. 解决Unsupported major.minor version 51.0错误

    解决Unsupported major.minor version 51.0错误使用jdk6运行项目时发生了Unsupported major.minor version 51.0错误.经过网上搜索发 ...

  9. Unsupported major.minor version 51.0

    org/jboss/as/domain/management/security/adduser/AddUser : Unsupported major.minor version 51. 0 已编译好 ...

随机推荐

  1. oem 重建

    OracleDBControl启动失败to local from URL=http://your-url.co     方法: emca -deconfig dbcontrol db -repos d ...

  2. 解决Myeclipse启动Spring Boot项目报出莫名异常

    有时候明明代码.配置都是正确的,但是一启动却报出莫名其妙的异常. 主要原因是resource包下的xml.yml文件或者其他配置文件路径不正确,解决方法如下: 第一步. 第二步.如果Excluded不 ...

  3. nagios系列(六)之nagios实现对服务器cpu温度的监控

    1.安装硬件传感器监控软件sensors yum install -y lm_sensors* 2.运行sensors-detect进行传感器检测 ##一路回车即可 Do you want to ov ...

  4. Ex 6_21 最小点覆盖问题_第八次作业

    子问题定义: 对于图中的每个结点,有两种状态,即属于最小点覆盖和不属于最小点覆盖,定义minSet[i][0]表示结点i属于点覆盖,并且以i为根的树的最小点覆盖的大小.minSet[i][1]表示点i ...

  5. Expm 9_3 无向图的双连通分量问题

      [问题描述] 给定一个无向图,设计一个算法,判断该图中是否存在关节点,并划分双连通分量. package org.xiu68.exp.exp9; import java.util.Stack; p ...

  6. v-bind绑定属性样式——class的三种绑定方式

    1.布尔值的绑定方式 <div id="demo"> <span v-bind:class="{‘class-a‘:isA ,‘class-b‘:isB ...

  7. linux 取消笔记本触摸键

    关闭触摸 sudo rmmod psmouse 关闭触摸和按键 sudo modprobe -r psmouse 打开 sudo modprobe psmouse

  8. ubuntu 窗口操作快捷键

    alt + space 打开窗口菜单SUPER + A: 搜索或浏览程序 SUPER/alt + tab: 切换窗口 SUPER + L: 进入睡眠状态 SUPER + M:查看日历

  9. python 全栈开发,Day119(Flask初识,Render Redirect HttpResponse,request,模板语言 Jinja2,用户登录例子,内置Session)

    一.Flask初识 首先,要看你学没学过Django 如果学过Django 的同学,请从头看到尾,如果没有学过Django的同学,并且不想学习Django的同学,轻饶过第一部分 三大主流Web框架对比 ...

  10. 【AtCoder】ARC081

    C - Make a Rectangle 每次取两个相同的且最大的边,取两次即可 #include <bits/stdc++.h> #define fi first #define se ...