Eclipse で Java EE 開発してる人が Gradle の門を叩く
Gradle っていうのが流行っているらしい。っていう噂は前々から聞いていた。その度に何度か触れてはみたものの、何度触れても仲良くなることはできなかった。なんかよくわからない。
でも、懲りずに最近また触り始めてみたところ、今度は少しづつ仲良くなれてきたような気がする。
邪魔になっていた思い込み
今まで仲良くなるのに失敗してきたのは、以下の思い込みがあったからのような気がする。
間違ってはないんだけど、一度その前提知識は捨てたほうがいい。
入門者の心構えとしては
- タスクを定義するな。Gradle ではタスクは既に定義されているのでそれを使え。ビルドスクリプトには、そのタスクが使えるようにプロジェクトの設定を記述せよ。
- "eclipse" プラグインは使用する必要なし。このプラグインはプロジェクトを Eclipse にインポートできるようにするプラグイン。元から Eclipse で開発をしているのなら使う必要なし。
- とりあえずビルドできるようになることをまず目指す。
最低限覚えておく
- プロジェクトのルートに build.gradle というビルドスクリプトを作成する。
- スクリプトで定義されていないプロパティにアクセスすると Project オブジェクトというオブジェクトに委譲される。
- war プラグインは java プラグインを拡張したものなので、war プラグインを使いたい場合は java プラグインのことも理解しておく。
サンプルスクリプト
Eclipse で Java EE プロジェクト作ってるなら大体これだけ書けばgradle build
できるはず。
apply plugin: 'war' def javaVersion = 1.8 def defaultEncoding = 'UTF-8' sourceCompatibility = javaVersion targetCompatibility = javaVersion tasks.withType(AbstractCompile) each { it.options.encoding = defaultEncoding } repositories { mavenCentral() } // ソースフォルダの場所を指定 sourceSets { main { java { srcDir 'src' } } } // Web 公開用のディレクトリを指定 webAppDirName = 'WebContent' dependencies { providedCompile 'javax:javaee-api:7.0' }