【问题标题】:Unresolved reference: ext when convert gradle to gradle.kts未解决的参考:将 gradle 转换为 gradle.kts 时的 ext
【发布时间】:2021-09-25 04:22:17
【问题描述】:

默认情况下,当我从 Android Studio 创建一个撰写应用程序时,它会在我的根项目build.gradle 中为我提供ext,如下所示。

buildscript {
    ext {
        compose_version = '1.0.0'
    }
    repositories {
        google()
        mavenCentral()
    }
}

当我把它改成build.gradle.kts时,它会抱怨

Unresolved reference: ext
Unresolved reference: compose_version
Too many characters in a character literal ''1.0.0''

我该如何解决这个问题?

【问题讨论】:

标签: android gradle gradle-kotlin-dsl


【解决方案1】:

我用

buildscript {
    extra.apply{
        set("compose_version", "1.0.0")
    }
    repositories {
        google()
        mavenCentral()
    }

要从其他gradle 文件访问它,我需要显式设置为一个变量

val composeVersion = rootProject.extra.get("compose_version") as String

然后我可以像这样使用它

composeOptions {
    kotlinCompilerExtensionVersion = composeVersion
}

dependencies {
   implementation ("androidx.compose.ui:ui:$composeVersion")
}

【讨论】:

  • val composeVersion = rootProject.extra["compose_version"] 是另一种选择
猜你喜欢
  • 2023-02-01
  • 2020-08-08
  • 2023-03-25
  • 2021-01-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-17
  • 2015-10-18
相关资源
最近更新 更多