イマドキのIDE事情 第16回Groovyベースのビルドツール「Gradle」をEclipseで使ってみる
skill

イマドキのIDE事情 第16回
Groovyベースのビルドツール「Gradle」をEclipseで使ってみる

2014.11.27

Gradleというビルドツールをご存じだろうか? JavaではビルドツールとしてMavenやAntが利用されることが多いが、Gradleはこれらと同種のツールで、Groovyを使用しているという特徴がある。Mavenは少しでも規約から外れたことをしようとした場合の煩雑さ、Antはすべての処理を一から記述しなくてはならずXMLが肥大化しがちという問題をそれぞれ抱えている。

GradleはGroovyを使用しているものの、Groovy専用のビルドツールというわけではなく、Javaでの開発にも利用できる。ビルドスクリプトの記述にGroovyを使用するため、MavenやAntのXMLベースのビルドファイルのように冗長な記述は不要だ。また、Maven/IvyリポジトリやAntのビルドファイルを利用できるなど既存資産も活用することができる。
このようにGradleはこれまでMavenやAntが抱えていた問題を解決する可能性を秘めたビルドツールといえる。今回はEclipseとGradleを組み合わせて利用する方法を紹介したい。 (竹添 直樹)

■GradleとEclipseの連携方法

GradleとEclipseを連携させるには、大きく分けて2つの方法が存在する。1つめはGradleのeclipseプラグインを使用して、GradleのビルドスクリプトからEclipse用の設定ファイルを生成するという方法だ。これによってGradleベースのプロジェクトをEclipseにインポートして開発を行うことが可能になる。この場合、Eclipseでは基本的にコーディングのみ行い、Gradleのコマンドはコンソール上から実行することになる。

もう1つは、Eclipse側でGradleをサポートするためのプラグインを使用し、Eclipse上からGradleを実行する方法だ。こちらはEclipse上で全ての操作が可能なためGradleに慣れていなくても取っつきやすいというメリットがある。

■GradleでEclipse用の設定ファイルを生成する

それではまず1つめの方法から試してみよう。ここでは例として、以下のような簡単なJavaプロジェクト用のビルドスクリプトを用意した。Javaプロジェクト用のjavaプラグインに加えてEclipseの設定ファイルを生成するためにeclipseプラグインを組み込んである。

apply plugin: 'java'
apply plugin: 'eclipse'

repositories {
 jcenter()
}

dependencies {
 compile 'org.slf4j:slf4j-api:1.7.21'
 testCompile 'junit:junit:4.12'
}

この状態でコマンドラインから「gradle eclipse」と実行すると、.projectや.classpathといったEclipse用の設定ファイルが生成され、EclipseにJavaプロジェクトとしてインポートできるようになる。

■Eclipse上でGradleを実行する

続いて、Eclipse上からGradleを実行する方法だ。Eclipse FoundationではGradleをサポートするためのBuildshipというプラグインが開発されており、Eclipse Mars以降Java開発向けのパッケージには標準で同梱されているため特に追加でインストール作業を行うことなく使用することができる。

Gradleを使用するプロジェクトを作成するにはEclipseのプロジェクト作成ウィザードで「Gradle Project」を選択できるようになる。

Gradleプロジェクトの作成(1)

ウィザードではプロジェクト名に加えて使用するGradleのバージョン(ローカルにインストールされているGradleを使ったり、gradlewを使うこともできます)などを選択する。

Gradleプロジェクトの作成(2)

作成されたGradleプロジェクトでは「Gradle Tasks」ビューもしくは「Run As」メニューからGradleによるビルドを行うことが可能だ。実行結果はGradle Executionsビューに表示される。

Gradle Tasksビュー

Gradle Executionsビュー

また、依存関係を変更した場合などはプロジェクトを右クリックし、「Gradle」→「Refresh Gradle Project」でプロジェクトのクラスパスを更新できる。

Gradleプロジェクトのリフレッシュ

■まとめ

Gradleは非常に柔軟性が高く強力なビルドツールだ。Antのようにゼロからビルド処理を記述する必要はないし、Mavenのように型にはめられすぎて柔軟性に欠けるということもない。また、本稿で紹介したようにEclipseは標準でGradleを使用することができる。

既存の資産を活用できることに加え、Gradleをインストールしていない環境でもビルドを行うことができるなど実用性にも配慮されている。MavenやAntに辟易としているのであれば、Gradleを試してみてはどうだろうか。

原稿:竹添直樹
株式会社ビズリーチ所属。Scalaを愛するJVM系プログラマ。業務の傍らOSS開発や執筆活動を行っている。
https://twitter.com/takezoen

この記事はどうでしたか?

おすすめの記事

キャリアを考える

BACK TO TOP ∧

FOLLOW