我想在执行构建后执行一些文件复制,并找到一些答案,说可以使用tasks.build.doLast()。 但是,如果我将其添加到我的(或任何gradle)脚本中,则不会调用它。
是否必须引用显式,如果是这样的话?
tasks.build.doLast(){
println '********************* LAST ******************'
}
答案 0 :(得分:3)
如果没有Gradle版本信息,我将假设您使用的是最新版本并从当前文档中提取。使用doLast()
点表示法,您当前的代码看起来有些偏差。
如果您正在编写任务以打印一行,则以下代码将起作用:
task1 {
//Task configuration goes here.
doLast {
println "********************* LAST ******************"
}
}
如果您使用doLast
完成另一项任务,Gradle会有一种方法。您可以使用finalizedBy
。以下是一个例子:
task1 {
println "Task 1 successful"
}
task2 {
println "********************* LAST ******************"
}
task1.finalizedBy task2
有关Gradle任务的详细信息,请查看Gradle文档的Chapter 14和Chapter 17。有一些例子可以定义那些简短章节中包含的类。