1

使用 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)
}

但没有成功。有任何想法吗?

4

1 回答 1

3

它将以这种方式工作:

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也会传递 的实例。

于 2017-09-25T13:04:49.557 回答