一、错误现象:
当改变了jdk版本时,在编译java时,会遇到Unsupported major.minor version错误。
jdk版本和stanford parser对应关系

JDK版本和Java编译器内部的版本号

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

Unsupported major.minor version 52.0 这个错误网上一百度一大堆,我就简单的记一下。

简单来说,就是执行代码的jdk版本 低于 编译的jdk版本

项目中错误:java.lang.UnsupportedClassVersionError: org/springframework/web/SpringServletContainerInitializer : Unsupported major.minor version 52.0 (unable to load class org.springframework.web.SpringServletContainerInitializer)

解决办法:1、先查看项目中的jdk版本。2、因为是spring的错误,可以查看jdk版本与spring版本的兼容问题。

如题所示,出现这个问题的原因是:将高版本JDK编译的项目放到低版本JDK所在的eclipse环境中编译运行将会出现这个错误。因此,要想这个项目在低版本的环境中能够正常运行,可以按照下面的思路进行解决:

(1)查看JDK的环境变量,确保JDK环境变量已经配置正确

(2)修改Java Build Path:

在eclipse中的项目上鼠标右键,Properties –> Java Build Path –>Libraries,将这里面不存在的删掉,并重新选择当前存在的库,如:JDK1.7、Tomcat7.0等

这一步做完之后,刷新项目重新编译运行,如果仍然报错的话,请继续往下看

(3)修改Project Facets:

同上面一样,在eclipse中的项目上鼠标右键,Properties –> Project Facets

在这里,主要修改我圈上的这两项配置,上面的3.0和JDK1.7相对应,3.1和JDK1.8相对应

如果这里不能修改,或者修改后刷新项目仍然报错的话,请继续往下看

(4)修改org.eclipse.wst.common.project.facet.core.xml:

打开项目所在的文件夹,打开.settings文件夹,修改里面的“org.eclipse.wst.common.project.facet.core.xml”文件

跟上面一样,直接修改这里的版本,然后回到eclipse里的项目,刷新项目重新编译运行

(5)最后绝招:

如果以上的步骤都做完了,仍然出现这个错误的话,就只能上绝招了。那就是:

将源项目进行备份
然后在eclipse中新建一个动态Java项目
把源项目中的所有Java文件、配置文件、前台页面等文件统统复制到新项目中
编译运行新项目
我相信都做到这一步了,应该是可以解决这个问题了
---------------------
作者:hchhan
来源:CSDN
原文:https://blog.csdn.net/hchhan/article/details/81106404
版权声明:本文为博主原创文章,转载请附上博文链接!

Unsupported major.minor version 52.0解决办法的更多相关文章

  1. Exception in thread "main" java.lang.UnsupportedClassVersionError: * : Unsupported major.minor version 52.0 解决办法

    Exception in thread "main" java.lang.UnsupportedClassVersionError: * : Unsupported major.m ...

  2. 关于Unsupported major.minor version 52.0解决办法(再次回顾)

    对于web项目的配置问题,在很大程度上,tomcat的版本问题起到很大的决定性因素,例如以上问题:Unsupported major.minor version 52.0 表示stanford par ...

  3. Unsupported major.minor version 52.0解决办法【转】

    1.首先解释一下报错原因: stanford parser和jdk版本对应关系 J2SE8=52, J2SE7=51, J2SE6.0=50, J2SE5.0=49, JDK1.4=48, JDK1. ...

  4. Unsupported major.minor version 52.0——解决

    Unsupported major.minor version 52.0 就是编辑用的是jdk8 而运行用的是jdk7, 改成jdk8就好了 参考文章:https://blog.csdn.net/qq ...

  5. Unsupported major.minor version 51.0解决办法(转)

    我使用的是Eclipse-jee-indigo + JDK 1.6.23环境,结果使用时出现Unsupported major.minor version 51.0错误提示,下面我来介绍Unsuppo ...

  6. Unsupported major.minor version 51.0解决办法

    问题: 之前使用的是高版本的myeclipse2015ci,然后换成了myeclipse10.5,之前的workspace的内容没有改变,结果工程都出现了感叹号,运行时提示 Unsupported m ...

  7. 我的Android进阶之旅------>解决Android Studio报错:DefaultAndroidProject : Unsupported major.minor version 52.0

    问题描述 今天使用Android Studio 2.0打开我之前的项目时,编译报了如下错误: Error:Cause: com/android/build/gradle/internal/model/ ...

  8. Java_异常_06_ Unsupported major.minor version 52.0

    二.参考资料 1.如何解决Unsupported major.minor version 52.0问题? 2.Unsupported major.minor version 52.0 3. Unsup ...

  9. java.lang.UnsupportedClassVersionError: org/hibernate/SessionFactory : Unsupported major.minor version 52.0

    问题: 在学习hibernate的过程中,涉及导入jar包的问题,写该文的时候是从官网下载的最新的hibernate的jar包hibernate-release-5.2.10.Final .在测试时, ...

随机推荐

  1. 【Quartz】持久化到数据库【五】

      前言 我们做到这里已经对Quartz定时器组件已经是学会了基本的使用了.但是我们有没有想过任务开启之后万一断掉了,当机了我们怎么办,你是否还想继续执行原先的任务.我们普通的创建是把任务放在内存中存 ...

  2. JS中清空字符串前后空格

    在JS 操作的时候 长期会有对字符串的操作, 但是在JS 中不像在C#中 有字符串的方法 Trim() 来对字符串进行处理 .  所以自己写一个对字符串前后清楚空格的方法还是有必要的 以免以后忘记了 ...

  3. 实际项目开发需要注意的tips

    1.尽量少用== 或者 != ,除非能够保证这里不会出现强制类型转换,严格起见,最好用 === 与 !==

  4. Java集合排序及java集合类详解--(Collection, List, Set, Map)

    1         集合框架 1.1         集合框架概述 1.1.1         容器简介 到目前为止,我们已经学习了如何创建多个不同的对象,定义了这些对象以后,我们就可以利用它们来做一 ...

  5. 纯CSS打造进度条

    进度条效果如下: CSS部分 body { background-color: white; } .progress-bar { display: flex; flex-direction: row; ...

  6. Django+Bootstrap+Mysql 搭建个人博客 (六)

    6.1.comments插件 (1)安装 pip install django-contrib-comments (02)settings INSTALLED_APPS = [ 'django.con ...

  7. kv.go

    package clientv3 import (     pb "github.com/coreos/etcd/etcdserver/etcdserverpb" //protob ...

  8. Java 线程池(ThreadPoolExecutor)原理分析与使用

    在我们的开发中"池"的概念并不罕见,有数据库连接池.线程池.对象池.常量池等等.下面我们主要针对线程池来一步一步揭开线程池的面纱. 使用线程池的好处 1.降低资源消耗 可以重复利用 ...

  9. js生成带logo的二维码

    作为一名java程序员,一直以来都是使用服务端生成二维码,最近接触前端的设计,感觉二维码这块如果放到前端去生成,一方面可以减轻服务端的压力,访问带宽,另一方面,前端页面控制比较顺畅 闲话少叙,说下我的 ...

  10. C++11中map的用法

    最全的c++map的用法 1. map最基本的构造函数:map<string ,int>mapstring; map<int,string >mapint;map<sri ...