ひだまりソケットは壊れない

ソフトウェア開発に関する話を書きます。 最近は主に Android アプリ、Windows アプリ (UWP アプリ)、Java 関係です。

まじめなことを書くつもりでやっています。 適当なことは 「一角獣は夜に啼く」 に書いています。

Gradle 1.9 がリリースされました

昨日、Gradle 1.9 がリリースされました!! Android Gradle プラグインでおなじみの build variant の仕組みが Gradle 本体にも入ったようです。 その他、Gradle デーモン使用時のビルド効率が向上したり、Java の並行ビルドができるようになっていたりJava の並行ビルドの効率が向上したりと興味深い感じです。

Gradle 1.9 のハイライト

上記ブログ記事に書かれていた Gradle 1.9 のハイライトを紹介します。 英語の訳は間違ってるかもしれません。 詳細はリリースノートをご覧ください。

New HTML Dependency Report

プロジェクトの依存関係のリポートの出力形式として HTML が追加されました。

apply plugin: "project-report"

build.gradle に上のように記述して、gradle htmlDependencyReportgradle projectReport コマンドを実行すれば HTML 形式での出力がビルドされます。

New Templates for Gradle Projects

init コマンド (以前は buildSetup と呼ばれていた) に新しい 2 つのプロジェクトタイプが追加されました。

  • groovy-library
  • scala-library

その名のとおり、それぞれ Groovy ライブラリと Scala ライブラリの雛形です。

個人的には独自のひな形を準備して、init コマンドでその雛形からプロジェクトを生成できるようになればいいなーと思ったりしてます。 (MavenArchetype みたいな。)

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 でも使えるんでしょうか。 (未検証)