升级Gradle Lombok插件至8.0.1时遇UnknownConfigurationException报错
解决Freefair Lombok插件8.0.1升级后'mainSourceElements'配置找不到问题
问题场景
将io.freefair.lombok插件从6.6.3版本升级至8.0.1版本后,构建阶段抛出如下异常:
org.gradle.api.plugins.InvalidPluginException: An exception occurred applying plugin request [id: 'java'] at org.gradle.plugin.use.internal.DefaultPluginRequestApplicator.exceptionOccurred(DefaultPluginRequestApplicator.java:207) [...] Caused by: org.gradle.api.internal.plugins.PluginApplicationException Caused by: org.gradle.api.artifacts.UnknownConfigurationException: Configuration with name 'mainSourceElements' not found. at [...] io.freefair.gradle.plugins.lombok.LombokPlugin.configureJavaPluginDefaults(LombokPlugin.java:71)
项目插件配置如下:
plugins { id "java" id "io.freefair.lombok" version "8.0.1" <other plugins> }
解决思路
- 校验Gradle版本兼容性:Freefair 8.x系列插件要求Gradle版本至少为7.5。若项目使用的Gradle版本低于此,会因插件与Gradle API不匹配导致配置项找不到。建议将Gradle版本升级至7.5及以上版本,优先选择插件官方推荐的适配版本。
- 调整插件应用顺序:尝试将
java插件与Lombok插件的声明拆分到独立的plugins块中,确保java插件先完成初始化:plugins { id "java" } plugins { id "io.freefair.lombok" version "8.0.1" // 其他插件 } - 排查冲突插件:项目中的其他插件可能修改了Java插件的默认配置,导致
mainSourceElements未被正确创建。可临时注释掉其他插件,逐个恢复来定位冲突源,再针对性调整插件版本或配置逻辑。 - 分步升级插件:若跨大版本升级引发问题,可先降级回6.6.3版本,再逐步升级到7.x系列的Freefair Lombok插件,待项目稳定后再升级至8.0.1,减少版本跳跃带来的兼容性断层。
内容的提问来源于stack exchange,提问作者loucat dev
相关产品推荐
相关产品推荐

