タスクをパラメータ化することは可能ですか? たとえば、他の 2 つのタスクで使用される 1 つの zip タスクを作成したいのですが、これらのタスクは、この zip タスクに関する追加情報 (例: zip 名) を渡す必要があります。
これが私がそれを機能させたい方法です。それができない場合、どうすればできますか?または、できる場合は、より良い解決策がありますか?
task zipFile(type: Zip) {
from files('dist/zip')
destinationDir = file('dist')
archiveName = myArchiveName // myArchiveName should be passed as property
}
task zipTwoFiles << {
// create first archive
zipFile.execute() // how to pass property to this task?
// create second archive
zipFile.execute() // how to pass property to this task?
}
これは、プロジェクトを ant から gradle に移行するための最初のステップであるため、実行したいと考えています。アリでは、次のようになります。
<target name="zipFile">
<zip destfile="dist/${myArchiveName}" basedir="dist/zip" />
</target>
<target name="zipFile1">
<antcall target="zipFile">
<param name="myArchiveName" value="myarchive.zip" />
</antcall>
<antcall target="zipFile">
<param name="myArchiveName" value="myarchive2.zip" />
</antcall>
</target>