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

有办法解决这个问题吗?

谢谢!

最佳答案

您的“删除”任务在配置阶段而不是gradle的执行阶段调用ant.delete。看一下Gradle DSL引用,了解如何在http://www.gradle.org/docs/current/dsl/org.gradle.api.tasks.Delete.html上正确配置“删除”任务

希望能有所帮助,

干杯,

雷内

关于ant - Gradle等待ANT任务完成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16323882/

10-10 09:26
查看更多