如何通过Gradle Kotlin DSL中的所有系统属性来测试任务?

时间:2019-05-22 13:02:34

标签: gradle-kotlin-dsl

如何将这个gradle groovy片段转换为gradle kotlin dsl而又不很冗长?

test {
    systemProperties System.getProperties() 
}

3 个答案:

答案 0 :(得分:0)

我发现的最冗长的方法是:

tasks.test {
    systemProperties(System.getProperties().mapKeys { it.key as String })
}

Test#systemProperties需要一个Map<String, Object>,但是System#getProperties返回一个java.util.Properties对象,因此仍然需要转换。

答案 1 :(得分:0)

我最终得到了这个...

tasks.named<Test>("test") {
    systemProperties System.getProperties() as Map<String, Any>
}

答案 2 :(得分:0)

这对我有用...

test { systemProperties(System.getProperties().map { it.key.toString() to it.value }.toMap()) }