だから、私は今、希望どおりに機能しているように見える次のものを持っています
task deleteJars(type: Delete) {
ext.collection = files { genLibDir.listFiles() }
delete ext.collection
}
task copyJars(type: Copy) {
from(configurations.compile) {}
from(fixedLibDir) {}
into genLibDir
}
copyJars.dependsOn('deleteJars')
少し質問があります
- それを1つの関数にgradleの方法で書き込むためのよりクリーンな方法はありますか?
- 以前、私は以下を持っていましたが、copyJarsタスクが実行されたときではなく、コピー機能が常に実行されるようです?
- タスクに単純なGroovy(たとえば、ファイルの削除、ファイルのコピーなど)を記述して、タスクが依存しているときに正しく実行されるようにするにはどうすればよいですか?
タスクが依存しているときにGroovyを実行するという私の恐ろしい試み(ただし、残念ながら、どのターゲットを選択して実行するたびに実行しても実行されました)...
task('copyJars') {
ext.collection = files { genLibDir.listFiles() }
delete ext.collection
copy { from configurations.compile into genLibDir }
copy { from fixedLibDir into genLibDir }
}
だから私の主な質問は、タスクでGroovyスクリプトを記述して、そのタスクが実行されたときにのみ実行されるようにする方法です。(上記はGroovyスクリプトだと思っていましたが、毎回実行されるようです)
ありがとう、ディーン