Gradle等待ANT任务完成

时间:2013-05-01 18:14:38

标签: ant gradle

我有一个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 完成并直接进入下一个任务,这是一个问题,因为那时候没有需要的文件删除。

有没有办法解决这个问题?

谢谢!

2 个答案:

答案 0 :(得分:1)

  

然后我有另一个调用getSource的任务并一个接一个地删除。

你到底是什么意思? Gradle任务不能调用其他任务;它只能依赖于它们。

答案 1 :(得分:1)

您的'删除'任务在配置阶段而不是gradle的执行阶段调用ant.delete。请查看有关如何在http://www.gradle.org/docs/current/dsl/org.gradle.api.tasks.Delete.html

正确配置“删除”任务的Gradle DSL参考

希望有所帮助,

欢呼声,