Java プラグインでは Zip タスクが勝手に実行される

Gradle に Java プラグインを適用すると なぜか Zip タスクが 勝手に実行されてしまいます。

ちょっと悩んでいたのですが、なんと 犯人は Java プラグインの assemble タスクだったのです。
しかも これは全然問題ではなくドキュメントにも書いてある歴とした仕様だったのです。
Java プラグインを適用した場合は assemble タスクの実行時に Zip, Jar, Tar 等のアーカイブタスクが全て実行されます。

例えば...

task distrib(type: Zip) {
    into(archivesBaseName) {
        into("") {
            from    libsDir
            include "*.jar"
        }
        into("lib") {
            from configurations.runtime
        }
    }
}
のようにタスクを定義しておけば assemble 時に distrib タスクが実行され build/distributions に配布ファイルを作成してくれるのです。

最初はアーカイブタスクが勝手に実行されることに違和感がありましたが、 なれてしまえば非常にありがたい仕組みですね。