ここからは、更にGradleを幸せに使える方法を紹介していきます。

gradle --daemon について

 さて、Gradleを使っていると不満に思えてくるのが、実行時間の遅さです。なにせ、筆者の環境では先のJavaプロジェクトでgradle testすると実行に4.732秒ほどかかります。少し、長いなと感じますね。

 その不満を解消するために、gradleには裏で常に待機していてもらうモードがあります。それが--daemonオプションです。

 試しにgradle --daemon testとしてみましょう。1回目は裏で待機していないため、やはり5秒くらいかかりますがもう一回実行してみると、1.041秒というごく短時間でタスクを完了することができます。うーん、素晴らしい!

 毎回毎回 --daemon とつけるのもメンドクサイので、GRADLE_OPTS環境変数に-Dorg.gradle.daemon=trueをセットすると、デフォルトでdaemonを使ってくれるようになります。

 動いているdaemonを止めたい時や、一時的に使いたくない時のためにそれぞれ--stopや--no-daemonオプションが用意されています。

gradle wrapper について

 さて、Gradleを導入したい!と思っても、チーム全員の開発環境をGradle用に整えて全員で歩調をあわせて…といったことを考えるととたんに腰が重くなるものです。しかし、Gradleならその点簡単に解決できます。

 gradle wrapperという仕組みが用意されていて、チームの中でGradleをマジメにインストールするのはあなた1人、それ以外の人はsvnやgitのリポジトリにコミットされているファイルだけ使えばOK!という塩梅にすることができます。

 見てみましょう。

リスト●gradleWrapper/build.gradle
apply plugin: "java"
apply plugin: "eclipse"

repositories {
	mavenCentral()
}

dependencies {
	testCompile "junit:junit:4.11" 
}

task wrapper(type: Wrapper) {
	gradleVersion = '1.4'
}

 task wrapper の記述が増えていますね。この記述を増やした後に gradle wrapperを実行します。

 そうするとgradlew(Mac、Linux用)とgradlew.bat(Windows用)とgradleフォルダが生成されます。これらをリポジトリにコミットするようにします。すると、他の人達はgradleコマンドの代わりにgradlewを使えるようになります。gradlewを実行すると、もし必要であればgradleコマンド実行用のバイナリを勝手にダウンロードしてくれます。

 まとめると、「みんな!gradleを使うためにはgradlewを使ってくれればOKだから!」と宣言すれば、すぐにチーム全員で使いはじめることができるようになるということです。