Spring Boot をはじめてみるよ(Gradle 編)

hiranoon.hatenablog.com

上記では、 STSGUI でプロジェクトを作りました。

使ったのが Maven でしたので、今度は Gradle で試してみましょう。

結論を言いますと、違いはプラグインをインストールするだけということが言えます。

使い方は若干変わりますが、 Gradle を選択するレベルの人にとってはどうということもないでしょう。 「ああ、それだけね。」と理解した方は、その部分だけ読むか、そのまま離脱でOKです。

・・・ですが、一応それなりに書いてみます。

Gradle プラグインの導入

[Help] > [Eclipse Marketplace...] を選択します。

f:id:hiranoon:20151230032543p:plain

検索窓に「Gradle」と入力して Enter キーを叩きましょう。 「Gradle Integration for Eclipse」というプラグインがでてきたらソレです。 (利用している STS のバージョンによって使えるプラグインのバージョンも変わるかも、です。)

f:id:hiranoon:20151230032554p:plain

あとは、 Next 押したり、規約に同意したり、と、次へ次へでインストールできます。

Spring Boot プロジェクト作成とアプリの実行

スタータープロジェクトという名のスケルトンを作る

STS でプロジェクトを作ります。 メニューから「Spring Starter Project」を選んでプロジェクトを作成しましょう。

[File] > [New] > [Spring Starter Project]

Type に「Gradle (STS)」を選択してください。 Next ボタン押下後の画面では、利用する機能として「Web」だけ選択します。

これで、 Gradle 版のプロジェクトが作成されました。

簡単な Web アプリの作成

ブラウザに簡単た文字表示するアプリを作ります。 任意のパッケージに置きましょう。ただし、ベースのパッケージ配下に置いてください。

@RestController // Webアプリのリクエストを受け付けるクラスであることの指定
public class IndexController {
  @RequestMapping("/") // URLのパスの指定
    public String index() {
        return "Hello Spring Boot by STS with Gradle!";
    }
}

アプリケーションの起動

STS で Spring Boot を起動します。裏で Tomcat が起動することになります。

プロジェクトを右クリックし、「Spring Boot App」の実行を選択します。

[Run As] > [Spring Boot App]

http://localhost:8080/ にアクセスして「Hello Spring Boot by STS with Gradle!」と表示されればOKです。

アプリの作成と起動は Maven を選んだ時と変わりなし、ですね。

実行可能な jar を作って配布

Spring Boot では、実行モジュールが、 Tomcat も含めた jar ファイルとして提供されます。 その jar ファイルの作成方法が、 Maven と若干異なります。

jar の作成と実行

プロジェクトを右クリックし、「Gradle Build」を選択します。

[Run As] > [Gradle Build]

f:id:hiranoon:20151230032609p:plain

初回は「何の Task を実行するのか」が設定されていないのでダイアログが開きます。 ここで build と入力してから「Run」ボタンを押しましょう。(Ctrl + Space でタスクの候補を表示させて選択することもできます。)

f:id:hiranoon:20151230032621p:plain

build/libs フォルダに jar ファイルが作成されます。実行直後は作成されたことが STS に反映されないので、確認できないときは、プロジェクトを右クリックして Refresh を選択しましょう。

起動は jar を実行するだけです。ターミナル.app や cmd.exe から以下のコマンドを打つと、 Tomcat が立ち上がります。

$ java -jar build/libs/my_first_spirng_boot_sts_gradle_war-0.0.1-SNAPSHOT.jar

ということで、 Maven と生成方法、生成される場所、が若干異なります。

おわりに

以上です。

Gradle のプラグインさえ入れれば、あとは Maven のときと大差ありませんね。 STS がよしなにやってくれるよ、というお話でした。

次こそ、 GUI を使わずに利用したお話をします。

GUI を使わずにプロジェクトを作成したお話はこちら。

hiranoon.hatenablog.com