如何在任务图结束时执行任务。
任务
task lastTask{
//do something
}
应该在任务图的末尾执行。
是否足以做到以下几点?
project.taskgraph.whenReady{
lastTask
}
任务图在Gradle的配置阶段得到解决。您无法在配置阶段执行任务,只能在执行阶段执行任务。
也许你希望你的任务总是在任何其他任务之前执行?在这种情况下你可以做到
task myTask {
doLast { ... }
}
tasks.all { Task t ->
if (t != myTask) {
t.dependsOn myTask
}
}
有两种方法可以实现这一目标。
dependsOn
和
finalizedBy
如果第二个任务依赖于第一个任务的任务之间存在关系,则将使用第一个。如果之前的任务是某种帮助,则可以使用后者。它也解释了here。
两种方式都可以与任务图的前一个任务结合使用。