Gradleには、from
、into
、duplicatesStrategy
と指定できるコピータスクがあります。しかし、duplicatesStrategy
はoverride
、ignore
またはfail
などの限られた選択肢を持つ唯一の列挙です。代わりに、ちょうど私が入力パラメータとして二つのファイル(既存および新規1)を取り、「コンテンツのマージ機能」を呼び出し、結果のファイルを出力できるようにしたいと思いオーバーライドのGradle:コピー中に重複ファイルのマージ戦略を指定する
。
from("fromdir") {
into 'targetdir'
duplicatesStrategy = { newFile,existingFile ->
return mergeFiles(newFile,existingFiles)
}
}
いずれにしても可能ですか?
コンテキスト:タスクが一つに複数のプロジェクトからDOC帳xmlファイルをコピーする必要があります。一つのプロジェクトは、他のプロジェクトのドキュメントの一部を上書きするので、正確に結果のドキュメントをマージするいくつかの「論理」が存在しなければならないことができます。