Android Compose项目转build.gradle.kts报Unresolved reference: ext如何解决
问题解决方案
Groovy 格式的 build.gradle 转为 Kotlin DSL 格式(.kts)时,需要按照 Kotlin 语法规则调整属性声明方式,三个报错的对应处理方法如下:
逐一解决报错
- 处理
Unresolved reference: ext报错:Kotlin DSL 中没有ext关键字,全局扩展属性统一使用extra进行管理。 - 处理
Too many characters in a character literal ''1.0.0''报错:Kotlin 语法中单引号仅用于声明单个字符的Char类型,字符串必须用双引号包裹,将原有版本号的单引号改为双引号即可。 - 处理
Unresolved reference: compose_version报错:该报错由前两个语法错误衍生而来,解决前两个问题后会自动消失。
修正后的完整配置
buildscript { extra.apply { set("compose_version", "1.0.0") } repositories { google() mavenCentral() } }
如果需要在子模块中引用该全局变量,在子模块的build.gradle.kts中添加如下声明即可使用:
val compose_version: String by rootProject.extra
内容的提问来源于stack exchange,提问作者Elye
相关产品推荐
相关产品推荐

