在Gradle里访问任务(task)的几种方式

402 阅读1分钟

在build.gradle里定义一个hello任务:

输出:

任务也可以通过tasks集合来访问:

println tasks.hello.name
println tasks[‘hello’].name
println ‘–’
tasks.each{ println it}

输出:

Configure project :
hello
hello

task ‘:buildEnvironment’
task ‘:components’
task ‘:dependencies’
task ‘:dependencyInsight’
task ‘:dependentComponents’
task ‘:hello’
task ‘:help’
task ‘:init’
task ‘:model’
task ‘:outgoingVariants’
task ‘:prepareKotlinBuildScriptModel’
task ‘:projects’
task ‘:properties’
task ‘:tasks’
task ‘:wrapper’

另一种办法是,使用 tasks.getByPath() 方法获取任务路径并且通过这个路径来访问任务。 getByPath() 方法支持用任务名称,相对路径或者是绝对路径作为参数调用。


task hello
println tasks.getByPath('hello').path
println tasks.getByPath(':hello').path

输出:

要获取更多Jerry的原创文章,请关注公众号"汪子熙":