SpringBoot启动报AopConfigUtils类找不到 已引入aop依赖该如何修复
问题修复方案
org.springframework.aop.config.AopConfigUtils 是 spring-aop 模块的官方内置类,绝对不需要自行编写添加,自行实现反而会引发后续版本兼容、功能异常等不可预知的问题,可按以下步骤排查修复:
第一步:清理Gradle缓存并重新拉取依赖
大概率是本地依赖缓存损坏导致类丢失,执行以下命令重置依赖:# Linux/Mac ./gradlew clean build --refresh-dependencies # Windows gradlew.bat clean build --refresh-dependencies执行完成后重新启动项目验证。
第二步:排查spring-aop依赖是否被意外排除
部分第三方依赖可能会主动排除spring-aop组件,导致即使引入了spring-boot-starter-aop也无法加载对应类,执行以下命令检查依赖树:./gradlew dependencies --configuration runtimeClasspath | grep -A 10 -B 10 spring-aop如果输出中
spring-aop被标记为excluded,找到对应依赖的排除规则删除即可,也可以手动在build.gradle中添加spring-aop依赖(版本由Spring Boot插件统一管理,无需指定版本号):implementation 'org.springframework:spring-aop'第三步:排查类加载器冲突问题
如果你使用了spring-boot-devtools、自定义类加载逻辑、或者是多模块项目,可能出现类加载隔离导致的类找不到问题:- 临时禁用
spring-boot-devtools后重启验证,如果恢复正常,将spring-aop相关包添加到devtools的重启包含规则即可 - 排查多模块项目的依赖传递规则,确认
spring-boot-starter-aop是在启动模块的依赖中生效
- 临时禁用
第四步:排查运行/打包环境问题
- 如果是IDE启动报错,执行
./gradlew bootRun命令直接启动项目,如果命令行启动正常,重新同步IDE的Gradle项目即可 - 如果是打包后运行报错,确认你使用了Spring Boot官方的
bootJar任务打包,而非普通的jar任务,普通jar任务不会把依赖包打进最终产物中
- 如果是IDE启动报错,执行
内容的提问来源于stack exchange,提问作者Dolphin
相关产品推荐
相关产品推荐

