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

添加Kotlin插件后出现org.gradle.api.plugins.Convention废弃警告求助

解决org.jetbrains.kotlin.android插件导致的Convention类废弃警告

问题根源

这个警告并非来自你的代码,而是kotlin-android插件内部仍在调用已废弃的org.gradle.api.plugins.Convention API。结合你的环境(Gradle 8.7-rc-4 + AGP 8.3.1),核心原因是版本兼容性不匹配——Gradle 8.x开始逐步废弃Convention API,而当前版本的kotlin-android插件/AGP尚未完全适配Gradle 8.7的新规范。

解决方案

1. 对齐AGP、Kotlin与Gradle的兼容版本

AGP 8.3.1的官方推荐Gradle版本范围是8.2~8.6,你使用的Gradle 8.7-rc-4属于预发布版,存在兼容性缺口。可以二选一:

  • 降级Gradle到8.6稳定版(推荐,避免预发布版的未知问题)
  • 升级AGP到8.4.0-beta及以上版本(已适配Gradle 8.7)

同时确保Kotlin版本与AGP匹配:AGP 8.3.x对应Kotlin 1.9.20,AGP 8.4.x对应Kotlin 1.9.21+,不要跨版本混用。

2. 检查并替换自身代码中的Convention用法

虽然你确认自身build.gradle无问题,仍可快速排查是否有遗留的废弃API调用:

  • 移除所有project.convention.getPlugin(...)写法
  • 替换为基于extensions的新API,示例如下:
    旧代码(Groovy):
    def androidConv = project.convention.getPlugin(AppPluginConvention)
    
    新代码:
    def androidExt = project.extensions.getByType(com.android.build.gradle.AppExtension)
    

3. 临时抑制警告(不推荐长期使用)

如果暂时无法调整版本,可在项目根目录的gradle.properties中添加配置,抑制该特定警告:

org.gradle.warning.filter.ignore=org.gradle.api.plugins.Convention

验证方案

修改后执行./gradlew clean build --warning-mode=all,确认警告消失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 00:52:13