SpringBoot项目编译报错 类文件具有错误的版本 61.0, 应为 52.0

springboot项目在编译时报错:

bash 复制代码
/Users/Apple/Developer/art/caicai/cai-api/dubbo-samples/1-basic/dubbo-samples-spring-boot/dubbo-samples-spring-boot-provider/src/main/java/org/apache/dubbo/springboot/demo/provider/ProviderApplication.java:22:32
java: 无法访问org.springframework.boot.SpringApplication
  错误的类文件: /Users/Apple/.m2/repository/org/springframework/boot/spring-boot/3.2.3/spring-boot-3.2.3.jar!/org/springframework/boot/SpringApplication.class
    类文件具有错误的版本 61.0, 应为 52.0
    请删除该文件或确保该文件位于正确的类路径子目录中。

经过百度了发现是springboot版本过高,项目的pom文件中我的springboot版本为3.0,而java的版本为1.8,导致不匹配报错。

原先的pom文件:

java 复制代码
<properties>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <dubbo.version>3.3.1</dubbo.version>
    <spring-boot.version>3.2.3</spring-boot.version>
</properties>

解决办法:降低springboot的版本。

修改后的pom文件:

bash 复制代码
<properties>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <dubbo.version>3.3.1</dubbo.version>
    <spring-boot.version>2.6.13</spring-boot.version>
</properties>

编译结果:

bash 复制代码
[INFO] Dubbo Samples Spring Boot .......................... SUCCESS [  0.218 s]
[INFO] dubbo-samples-spring-boot-interface ................ SUCCESS [  0.006 s]
[INFO] dubbo-samples-spring-boot-provider ................. SUCCESS [  1.816 s]
[INFO] dubbo-samples-spring-boot-consumer ................. SUCCESS [  0.046 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  2.243 s
[INFO] Finished at: 2024-11-09T14:19:18+08:00
[INFO] ------------------------------------------------------------------------
进程已结束,退出代码为 0

参考链接:https://blog.csdn.net/simonchi/article/details/126625381

相关推荐
三品吉他手会点灯1 小时前
C语言学习笔记 - 20.C编程预备计算机专业知识 - 变量为什么必须的初始化【重点】
c语言·笔记·学习
代码AI弗森1 小时前
一文理清楚“算力申请 / 成本测算 / 并发评估”
java·服务器·数据库
Java开发的小李1 小时前
SpringBoot + Redis 实现分布式 Session 共享(解决多实例登录状态丢失问题)
spring boot·redis·分布式
sakiko_1 小时前
UIKit学习笔记1-创建项目(使用UIKit)、使用组件
笔记·学习
Old Uncle Tom1 小时前
OpenClaw 记忆系统 -- 记忆预加载
java·数据结构·算法·agent
小小小米粒2 小时前
Collection单列集合、Map(Key - Value)双列集合,多继承实现。
java·开发语言·windows
生信碱移2 小时前
PACells:这个方法可以鉴定疾病/预后相关的重要细胞亚群,作者提供的代码流程可以学习起来了,甚至兼容转录组与 ATAC 两种数据类型!
人工智能·学习·算法·机器学习·数据挖掘·数据分析·r语言
前端一小卒2 小时前
我用 Claude Code 的 Superpowers 技能链写了个服务,部署前差点把服务器搞炸
前端·javascript·后端
摇滚侠2 小时前
expdp 查看帮助
java·数据库·oracle
:1213 小时前
java基础
java·开发语言