Gradle 1.9 がリリースされました
昨日、Gradle 1.9 がリリースされました!! Android Gradle プラグインでおなじみの build variant の仕組みが Gradle 本体にも入ったようです。 その他、Gradle デーモン使用時のビルド効率が向上したり、Java の並行ビルドができるようになっていたりJava の並行ビルドの効率が向上したりと興味深い感じです。
- リリースノート: Gradle 1.9 Release Notes
Gradle 1.9 のハイライト
上記ブログ記事に書かれていた Gradle 1.9 のハイライトを紹介します。 英語の訳は間違ってるかもしれません。 詳細はリリースノートをご覧ください。
New HTML Dependency Report
プロジェクトの依存関係のリポートの出力形式として HTML が追加されました。
apply plugin: "project-report"
build.gradle に上のように記述して、gradle htmlDependencyReport
か gradle projectReport
コマンドを実行すれば HTML 形式での出力がビルドされます。
New Templates for Gradle Projects
init
コマンド (以前は buildSetup
と呼ばれていた) に新しい 2 つのプロジェクトタイプが追加されました。
groovy-library
scala-library
その名のとおり、それぞれ Groovy ライブラリと Scala ライブラリの雛形です。
個人的には独自のひな形を準備して、init
コマンドでその雛形からプロジェクトを生成できるようになればいいなーと思ったりしてます。 (Maven の Archetype みたいな。)
Faster Incremental and Parallel Builds with Gradle Daemon
Gradle デーモン を使用したときのビルド効率がより一層向上しました。 インクリメンタルビルドは全てのユーザーに益をもたらすでしょうし、さらに Java プロジェクトを 並行してビルド することにより、さらなるビルド時間の短縮を体感できるでしょう。
Variants for Native Applications (incubating feature)
新たに 「Variants」 が導入されました。 Variants は、バイナリを生成するための様々な方法をモデル化できるものです。 例えば、異なる CPU アーキテクチャ (x86 と x64) のための variants を用意したり、デバッグシンボルありの variant とデバッグシンボルなしの variant を定義したりできます。 1 回のビルド実行で、すべての variants をビルドすることもできますし、一部のみビルドすることもできます。
Android Gradle プラグインを使っている人にはおなじみですね。 ブログ記事には 「同じアプローチが C や C++ で使える」 って書かれてますが、Java でも使えるんでしょうか。 (未検証)