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

升级spring-boot-starter-parent后启动报错:NoClassDefFoundError求助

解决Spring Boot从1.4.3升级到1.5.4启动时的NoClassDefFoundError问题

嘿,我之前升级Spring Boot版本时也踩过类似的坑,给你几个实用的排查和解决方向:

  • 清理依赖缓存并强制更新
    本地仓库里的旧依赖缓存很可能拖后腿,先彻底清理再重新构建:

    • Maven项目:执行 mvn clean install -U,其中-U参数会强制Maven更新所有快照和依赖版本
    • Gradle项目:执行 ./gradlew clean build --refresh-dependencies,强制刷新依赖配置
  • 排查依赖冲突
    版本升级后很可能出现依赖版本不一致的情况,用命令生成依赖树查看:

    • Maven:mvn dependency:tree
    • Gradle:./gradlew dependencies
      重点检查Spring核心组件(比如spring-core、spring-context、spring-boot相关包)的版本,确保它们都和1.5.4.RELEASE的parent版本对齐。如果发现某个依赖被旧版本覆盖,可在dependencyManagement里锁定正确版本,或者直接在对应依赖中指定版本。
  • 检查自定义依赖排除
    回忆下之前是否为了解决某些问题在pom.xml或build.gradle里添加过<exclusions>(Maven)或exclude(Gradle)配置?升级后这些排除可能导致必要的类缺失。比如如果排除了spring-boot-starter里的某个核心依赖,现在需要确认是否还有保留的必要。

  • 同步Spring Boot插件版本
    确保你的构建插件版本和parent版本一致:

    • Maven的spring-boot-maven-plugin版本要设为1.5.4.RELEASE
    • Gradle的org.springframework.boot插件版本也要对应升级到1.5.4.RELEASE
      插件和parent版本不匹配会导致打包或运行时的类路径异常。
  • 清理IDE缓存
    有时候IDE的依赖缓存没同步更新,导致运行时还是加载旧版本的类:

    • IntelliJ:点击File -> Invalidate Caches...,选择清理并重启IDE
    • Eclipse:右键项目 -> Maven -> Update Project,勾选Force Update of Snapshots/Releases

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 08:18:07