使用Gradle初始化Spring Boot项目报错:java.lang.NoClassDefFoundError:groovy/lang/GroovyObject
问题解决方案
环境
- STS 4.8.1
- JDK 17
- Gradle 8.5
- Windows 10
问题描述
在Eclipse(+Spring Tools)IDE中使用Gradle构建Spring Boot项目时,出现以下错误:
无法使用与Gradle发行版
https://services.gradle.org/distributions/gradle-8.5-bin.zip的连接运行分阶段构建操作。
groovy/lang/GroovyObject
ch.qos.logback.classic_1.2.3.v20200428-2012无法找到groovy.lang.GroovyObject
解决方法
- 升级STS版本:STS 4.8.1版本过旧,对Gradle 8.5和JDK 17兼容性不足,建议升级到STS 4.20及以上版本。
- 固定Groovy依赖版本:在项目的
build.gradle文件中显式声明与Gradle 8.5兼容的Groovy版本(Gradle 8.5默认适配Groovy 4.0.x),示例:dependencies { implementation 'org.codehaus.groovy:groovy-all:4.0.14' } - 清理IDE缓存与项目:执行STS菜单
File > Clean...清理项目,再通过Gradle > Refresh Gradle Project刷新依赖;也可直接删除项目根目录下的.gradle、.settings文件夹后重新导入项目。 - 排除冲突的Logback依赖:在
build.gradle中添加排除规则,移除旧版Logback的冲突依赖:configurations.all { exclude group: 'ch.qos.logback', module: 'logback-classic', version: '1.2.3' }
内容的提问来源于stack exchange,提问作者rineez
相关产品推荐
相关产品推荐

