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

如何将项目级build.gradle从Gradle Groovy迁移至Kotlin DSL

项目级 build.gradle 从 Groovy 转 Kotlin DSL 修正指南

报错原因

你碰到的这个错误是因为Groovy和Kotlin DSL在plugins块的语法规则不一样:Groovy允许在id()的括号里直接写version参数,但Kotlin DSL要求version作为单独的函数调用,不能塞进id()的括号里,导致了类型不匹配的问题。

修正后的完整代码

// 替代原buildscript.ext的全局变量定义
val compose_version by extra("1.1.1")

// 项目级通用插件配置
plugins {
    id("com.android.application") version "7.3.1" apply false
    id("com.android.library") version "7.3.1" apply false
    id("org.jetbrains.kotlin.android") version "1.6.10" apply false
}

核心修改点

  • 全局变量替换:原来Groovy里的buildscript.ext块,在Kotlin DSL里用val 变量名 by extra("值")来定义全局变量,子模块里可以通过rootProject.extra["compose_version"]或者同样的by extra方式引用这个值。
  • plugins块语法调整:把原Groovy中id("xxx" version "xxx")的写法拆成id("xxx") version "xxx",这是Kotlin DSL规定的插件依赖写法,符合语法要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 18:45:48