我知道传递配置闭包和为任务定义操作之间的区别.我相信你不能<<在配置闭包中使用,因为它似乎是一个语法错误:
task wrong {
<< { println "From doLast" }
}
Run Code Online (Sandbox Code Playgroud)
但.为什么我不能用leftShift作为等同<<于上述配置关闭?在一个更加清晰的测试用例中,为什么以下的buildfile不输出该行From leftShift - inside?
defaultTasks 'tryout'
task tryout {
doLast { println "From doLast" }
leftShift { println "From leftShift - inside" }
}
tryout.leftShift { println "From leftShift - outside" }
Run Code Online (Sandbox Code Playgroud)
当然,这不是一个真正的问题,因为我可以简单地使用doLast.我只是想扩大我对Gradle的理解.谢谢!
RaG*_*aGe 10
<<当与任务定义一起使用时,在按位意义上并不是真正的leftshift.这是简写doLast.在gradle DSL中:
task hello << {
println 'Hello world!'
}
Run Code Online (Sandbox Code Playgroud)
与以下内容完全相同:
task hello {
doLast{
println 'Hello world!'
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2086 次 |
| 最近记录: |