Intellij IDEAでGradleプロジェクト作成からServletプログラムの実行まで

スポンサーリンク

Intellij IDEAで  公式の動画 を見ながら Gradle プロジェクトを作成して、Hello World まで実行してみました。動画のバージョンは 13.x となってますが、14.x でも大体同じ感じでいけます。使い方調べても英語ばかりなんでこういう動画は助かりますね。

プロジェクトの作成

今回の実行環境は以下の通りです。

  • Intellij IDEA 14.1.4 Ultimate Edition
  • Java 1.8.0_45
  • Tomcat 7.0.63

Create New Project で新規プロジェクトを作成します。

f:id:tasukujp:20150712002921p:plain

GroupIdArtifactId を入力します。

f:id:tasukujp:20150712004331p:plain

Use auto-importCreate directories for empty content roots automatically にチェックを入れます。

f:id:tasukujp:20150719123113p:plain

ここはそのままで。

f:id:tasukujp:20150712005918p:plain

Tips は毎回表示されるので左下のチェックを外して消しておきましょう。

f:id:tasukujp:20150712010031p:plain

以上でGradleプロジェクトが作成されました。

f:id:tasukujp:20150719123235p:plain

実行プログラムの作成

まずはbuild.gradleを以下のように修正します。war プラグインと javaee-api を追加しています。javaee-api はコンパイルには必要ですが、war ファイルには含めない(APサーバーに含まれている)ので providedCompile としています。

group 'com.tasknotes'
version '1.0-SNAPSHOT'

apply plugin: 'java'
apply plugin: 'war'

sourceCompatibility = 1.5

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
    providedCompile group: 'javax', name: 'javaee-api', version: '7.0'
}

右クリック -> New -> Java Class を選択して Servlet のプログラムを作成します。

f:id:tasukujp:20150719141211p:plain

f:id:tasukujp:20150719141252p:plain

Servlet のコードは以下の通りです。

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet(name = "hello", urlPatterns = "/")
public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.getWriter().write("Hello Servlet!");
    }
}

実行環境の準備

右上にある下三角ボタンをクリックして Run/Debug Configuration を開きます。

f:id:tasukujp:20150719141442p:plain

プラスボタンを押してAPサーバーを追加しましょう。今回は Tomcat を使用します。別途インストールが必要ですが、Macの場合はbrew install tomcatで一発です。本当は Glassfish を使用したかったのですが、Glassfish 4.1 だと Root 権限じゃないと起動できなくなってるのでやめました。他にやり方あるのかもしれませんが早く直して。  GlassFish 4.x が Mac OS X 10.10.3 で動作しない事象について

f:id:tasukujp:20150719184359p:plain

Name を変更して Application server でインストールした Tomcat を選択します。Open browser では普段使用してるブラウザを選択しましょう。下に表示されている Warning は次の設定をすれば消えます。

f:id:tasukujp:20150719184146p:plain

Deployment タブに移動して、プラスボタンからデプロイ対象を追加しましょう。Application context を/のまま変更しなければ$CATALINA_HOME/libexec/webapps/ROOTにデプロイされます。

f:id:tasukujp:20150719184256p:plain

プログラムの実行

設定が出来たら実行します。実行ボタンをクリックして下さい。

f:id:tasukujp:20150719185338p:plain

ブラウザが起動して Hello Servlet! が表示されたら成功です。

f:id:tasukujp:20150719185416p:plain