【已解决】Spring常见错误:类文件具有错误的版本 61.0, 应为 52.0

目录

  • 问题复现
  • 原因分析
  • 错误依赖
  • 正确依赖

问题复现

        报错内容如下:

java: 无法访问org.springframework.web.bind.annotation.RequestMapping
  错误的类文件: /D:/Java/Apache Software Foundation/apache-maven-3.6.3/maven/repository/org/springframework/spring-web/6.0.11/spring-web-6.0.11.jar!/org/springframework/web/bind/annotation/RequestMapping.class
    类文件具有错误的版本 61.0, 应为 52.0
    请删除该文件或确保该文件位于正确的类路径子目录中。

原因分析

        报错信息中的61.0和52.0其实是jdk对应的major version信息,他们分别对应jdk17和jdk8。其他JDK分别对应的major version如下表所示。

JDK版本 major.minor version
Java SE 1.1 45
Java SE 1.2 46
Java SE 1.3 47
Java SE 1.4 48
Java SE 5 49
Java SE 6 50
Java SE 7 51
Java SE 8 52
Java SE 9 53
Java SE 10 54
Java SE 11 55
Java SE 12 56
Java SE 13 57
Java SE 14 58
Java SE 15 59
Java SE 16 60
Java SE 17 61
Java SE 18 62
Java SE 19 63
Java SE 20 64
Java SE 21 65

        记忆规律: 我们常用的JDK1.8对应major.minor version的是52,每升级(降级)1个版本其major.minor version加1(减1)

错误依赖

1、当前的项目安装适应的JDK版本,IDEA中项目中配置好新的JDK;
2、第二种方式更为简单,直接去Maven远程仓库中复制一下低版本的Spring Web MVC依赖即可(我是更倾向于第二种方案)
我本地的JDK版本是1.8,也就是8,报错的依赖是:


    org.springframework
    spring-webmvc
    6.0.4

有可能是:


	org.springframework
	spring-web
	6.0.11

正确依赖


    org.springframework
    spring-webmvc
    5.2.0.RELEASE

或者是


	org.springframework
	spring-web
	5.2.0.RELEASE

 

你可能感兴趣的:(后端技术栈,Java,springboot,spring,java,后端)