コピーAPIには、設定可能なフラグ/プロパティについては記載されていません。では、デフォルトのアクションは何で、どのように変更できますか?
これによると、
Gradle 0.9.1以降、コピータスクは常にファイルを上書きします。他の戦略はまだサポートされていません。
問題のテキストにあるように、Copy
タスクはファイルを上書きし、他の戦略は現在サポートされていません。それがあなたの場合に適切でない場合は、いつでもAntタスクにフォールバックできます。
DuplicatesStrategyhttp ://www.gradle.org/docs/1.7-rc-1/release-notes#duplicate-file-handling-for-copy-and-archive-operationsとhttp://www.gradle.orgを確認してください/docs/current/javadoc/org/gradle/api/file/DuplicatesStrategy.html。両方とも非上書きコピーで機能するはずです(上書きコピーがデフォルトです)。
duplicatesStrategy 'exclude'
また、ネストされた「from」に存在する可能性のあるバグについて、GradleZipDuplicatesStrategyが正しく機能しないことも確認してください。
タスクコピーを使用するときに同じ問題が発生します。gradleは常に最新のチェックを実行するため、コピーがスキップされます。
gradleのユーザーマニュアルで詳細を読んだ後、タスクCopyの代わりにproject.copy()メソッドを使用できることがわかりました。この方法では、最新のチェックがスキップされるため、ファイルは常に宛先にコピーされます。
task myCopy << {
copy {
from (yourSourceDir)
into (yourDestDir)
}
}