2

我正在尝试采用 Kotlin Gradle DSL。我有一个gradle.properties,除其他外:

slf4jVersion=2.0.0-alpha1

我用以下方式声明依赖项build.gradle.kts

implementation( name = "slf4j-api",
  group = "org.slf4j", version = project.properties["slf4jVersion"].toString())

是的,它有效,但它也有气味。问题是丑project.properties["slf4jVersion"].toString()

我不应该只写slf4jVersion吗?它使标准配置看起来像自定义黑客。使用 Kotlin Gradle DSL 将版本号保存在一个单独的文件中的规范和简洁的方法是什么?

4

1 回答 1

1

您可以通过委托属性访问项目属性。

在你的build.gradle.kts

val slf4jVersion: String by project
implementation(name = "slf4j-api", group = "org.slf4j", version = slf4jVersion)

官方示例:https ://github.com/gradle/kotlin-dsl-samples/blob/3c977388f78bdcff1f7ed466e8d27feb5bf32275/samples/project-properties/build.gradle.kts#L14

于 2020-11-10T10:50:13.377 回答