1

任务执行后如何同步两个目录?我可以这样做:

task syncDirs(type: Sync) {
    ...
}

task someTask {
    doLast {
        syncDirs.execute()
    }
}

但是方法“执行”是内部的,我必须避免它。
感谢您提前回答。

4

2 回答 2

1

根据您的确切需求,您可以使用syncDirs.dependsOn(someTask),或调用内部的deleteandcopy 方法someTask.doLast(这Sync就是当前实现的方式)。

于 2013-09-16T15:59:48.123 回答
1
task myTask << {

    copy {
        from 'src_dir'
        into 'dst_dir'
        include 'myfile.txt'
    }

    sync {
        from "src_dir/foo"
        into "dst_dir/bar"
    }
}

在 Gradle 1.10 中,您可以在单个任务中完成复制文件和同步目录等操作。我更喜欢这样做,而不是有单独的复制和同步任务。

对于同步,如上所述进行单独删除和复制的想法似乎很乏味。我很高兴我可以打电话sync两者兼得。

于 2014-02-05T02:25:22.450 回答