skr*_*ets 10 groovy gradle kotlin
这是来自 Groovy 的一个示例,它准确地代表了我想要实现的目标:
Command line
:
./gradlew jib -PmyArg=hello
Run Code Online (Sandbox Code Playgroud)
build.gradle.kts
task myTask {
doFirst {
println myArg
... do what you want
}
}
Run Code Online (Sandbox Code Playgroud)
此示例的来源在这里 - 选项 3。
如何myArg
在 Kotlin DSL 中读取传递和读取值?
skr*_*ets 12
一段时间后找到答案:
build.gradle.kts
val myArg: String by project // Command line argument is always a part of project
task("myTask") {
doFirst {
if (project.hasProperty("myArg")) {
println(myArg)
}
}
}
Run Code Online (Sandbox Code Playgroud)
Command line
:
gradle myTask -PmyArg=foo
Run Code Online (Sandbox Code Playgroud)
Output
:
$ gradle myTask -PmyArg=foo
> Task :myTask
foo
BUILD SUCCESSFUL in 1s
1 actionable task: 1 executed
Run Code Online (Sandbox Code Playgroud)
相关链接:
我像这样检索了我的任务的参数(使用Kotlin DSL的 build.gradle.kts ):
tasks.create("myCustomTask") {
doLast {
val myArg = properties["myArgName"]
// OR a more verbose form:
val myArg = project.properties["myArgName"]
}
}
Run Code Online (Sandbox Code Playgroud)
./gradlew myCustomTask -PmyArgName=hello
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3879 次 |
最近记录: |