You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启动Spring Boot应用报错:无法访问SpringApplication类版本不兼容

解决思路

1. 排查依赖传递链

  • 执行 gradle dependencies 命令输出完整依赖树,定位哪个依赖间接引入了Spring Boot 3.0.1。重点排查spring-boot-starter系列依赖或第三方库是否强制指定了高版本Spring Boot。
  • 找到问题依赖后,通过exclude排除Spring Boot 3.x模块,或是在dependencyManagement中统一锁定版本:
// 排除单个依赖中的高版本Spring Boot
implementation('问题依赖坐标') {
    exclude group: 'org.springframework.boot', module: 'spring-boot'
}

// 统一锁定Spring Boot版本
dependencyManagement {
    imports {
        mavenBom "org.springframework.boot:spring-boot-dependencies:2.7.6"
    }
}

2. 校验Spring Boot插件配置

  • 确保build.gradle中插件版本与依赖版本匹配,避免插件自动拉取不兼容的依赖版本:
plugins {
    id 'org.springframework.boot' version '2.7.6'
    id 'io.spring.dependency-management' version '1.0.15.RELEASE'
    id 'java'
}

io.spring.dependency-management插件会自动管理Spring Boot依赖版本,2.7.6版本推荐搭配1.0.15.RELEASE的管理插件。

3. 清理缓存与构建产物

  • 执行 gradle clean 删除项目build目录下的构建产物。
  • 手动删除本地仓库中Spring Boot 3.0.1的对应目录(即报错路径/repository/org/springframework/boot/spring-boot/3.0.1/),重新执行gradle build让Gradle拉取正确版本依赖。

4. 检查全局与子模块配置

  • 查看项目根目录的gradle.properties文件,确认是否存在springBootVersion等配置项被误设为3.0.1。
  • 如果是多模块项目,检查子模块的build.gradle是否单独指定了高版本Spring Boot,导致父模块依赖被覆盖。

5. 明确Java版本配置

  • 在build.gradle中显式指定Java 11,避免插件根据环境自动适配高版本Java并拉取对应Spring Boot版本:
java {
    sourceCompatibility = JavaVersion.VERSION_11
    targetCompatibility = JavaVersion.VERSION_11
}

内容的提问来源于stack exchange,提问作者ljs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 00:55:13