我有一个gradle任务调用ant.exec()来将svn导出到目录中:
/*
* Get code from repository into the 'src' directory
*/
task getSource << {
ant.exec(executable: svn_executable) {
arg(value: 'export')
arg(value: repository)
arg(value: 'src')
}
}
然后我有一个删除导出目录中某些文件的任务:
task deletes(type: Delete) {
ant.delete() {
fileset(dir: "src", includes: "**/*template*")
}
}
然后我还有另一个任务,一个接一个地调用 getSource 和删除。
问题是gradle不会等待 getSource 完成并直接进入下一个任务,这是一个问题,因为那时候没有需要的文件删除。
有没有办法解决这个问题?
谢谢!
答案 0 :(得分:1)
然后我有另一个调用getSource的任务并一个接一个地删除。
你到底是什么意思? Gradle任务不能调用其他任务;它只能依赖于它们。
答案 1 :(得分:1)
您的'删除'任务在配置阶段而不是gradle的执行阶段调用ant.delete。请查看有关如何在http://www.gradle.org/docs/current/dsl/org.gradle.api.tasks.Delete.html
正确配置“删除”任务的Gradle DSL参考希望有所帮助,
欢呼声,
勒