gradle-使用dependsOn完成任务后的清理

gradle-使用dependsOn完成任务后的清理,gradle,Gradle,我有两个自定义任务,如-- taskA生成一个文件并对其执行一些操作。 taskB还对taskA生成的文件执行一些操作。 我可以分别运行这两个任务 我需要在gradle命令完成时删除此文件,即,如果我运行gradle taskA,则在taskA完成时文件将被删除;如果我运行gradle taskB,则在taskB完成时文件将被删除 我可以通过添加doLast块和添加删除逻辑来实现第一部分,但当我运行taskB时,我没有要执行操作的文件(因为taskA doLast已经删除了该文件) 那么,在我运

我有两个自定义任务,如--

taskA生成一个文件并对其执行一些操作。 taskB还对taskA生成的文件执行一些操作。 我可以分别运行这两个任务

我需要在gradle命令完成时删除此文件,即,如果我运行gradle taskA,则在taskA完成时文件将被删除;如果我运行gradle taskB,则在taskB完成时文件将被删除

我可以通过添加doLast块和添加删除逻辑来实现第一部分,但当我运行taskB时,我没有要执行操作的文件(因为taskA doLast已经删除了该文件)


那么,在我运行taskB时,是停止taskA doLast,还是通过其他方式来实现这一点

您可以创建一个专用的“清理”任务来处理文件删除,并使
taskA
taskB
这两个任务由此任务
cleanup
完成:

task cleanup{
    doLast{
        // DELETE the file
    }
}

taskA.finalizedBy cleanup
taskB.finalizedBy cleanup

这样,无论您运行taks A还是B,文件都会被删除。这将确保在通过任务
清理
删除文件之前执行
taskB

感谢您的快速回答。工作很棒。
task cleanup{
    doLast{
        // DELETE the file
    }
}

taskA.finalizedBy cleanup
taskB.finalizedBy cleanup