无法将所有配置参数与 gradle 中的自定义配置一起使用与 kotlin-dsl

Unable to use all configuration parameters with a custom configuration in gradle with kotlin-dsl

使用 gradle-groovy 可以使用很多参数(组、名称、版本、分机、分类器)进行自定义配置:

configurations {
    explode
}

dependencies {
    explode (group: 'org.apache.samza', name: 'samza-shell', ext: 'tgz', classifier: 'dist', version: "$SAMZA_VERSION")
}

但我不知道如何使用 kotlin-dsl 做到这一点。我试过了:

val explode by configurations.creating

dependencies {
    explode(group = "org.apache.samza", name = "samza-shell",  ext = "tgz", classifier = "dist", version = samzaVersion)
    // "explode"(group = "org.apache.samza", name = "samza-shell",  ext = "tgz", classifier = "dist", version = samzaVersion)
}

但没有成功。有什么想法吗?

它将以这种方式工作:

val explode by configurations.creating

dependencies {
    explode(mapOf(
      "group" to "org.apache.samza",
      "name" to "samza-shell",
      "ext" to "tgz",
      "classifier" to "dist",
      "version" to "0.13.1"
      )
    )
}

老实说,为了简洁起见,我宁愿使用字符串插值。

此外,对于 groovy,也会传递 Map 的实例。