Java
Maven
Tomcat
IntelliJ

IntelliJ IDEA + Maven + Tomcat 9 を利用した開発環境構築

はじめに

タイトルの通り、開発環境構築時の内容を記載します。
同じ環境のそれっぽい記事は何個かあったのですが、要所で設定内容が違ったり、私の環境では動かすことができないことがありましたので、備忘録として残します。

本記事では、
Tomcatインストールから、サーバ起動~デプロイまでの手順を記載します。
対象環境は、 macOS 10.13.4 です。

TomcatインストールとMaven設定

1. Tomcatのインストール

Apache Tomcatからダウンロードし、ローカルに展開します。もしくは、brew コマンドでTomcatをインストールします(2018/04/17時点では、 Tomcat 9.0.6 がインストールされます)。

brweコマンドでインストールした場合は、以下場所にインストールされます。

  • <インストール先>/tomcat/9.0.6

2. Tomcat Managerの設定

Tomcat Manager を利用できるように、tomcat-users.xml にユーザ(user)とロール(role)を設定します。

tomcat-users.xml は、以下場所に格納されています。

  • <インストール先>/tomcat/9.0.6/libexec/conf
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager-script,manager-gui"/>

ロールの意味合いは、以下の通りです。

  • manger-script

    本家ドキュメントより
    Access to the HTML interface

  • manger-gui

    本家ドキュメントより
    Access to the tools-friendly plain text interface that is described in this document, and to the "Server Status" page.

とりあえず、ブラウザとツールから利用できるように上記ロールを設定します。

3. Maven 設定ファイルのサーバ設定

後ほど利用するMaven プラグインからアクセスできるように、先に settings.xml にサーバ(server)を設定をしておきます。

settings.xml の格納先は設定により変わりますが、デフォルトであれば以下場所に格納されています。

  • <ユーザホーム>/.m2
<servers>
   <server>
     <id>localhost</id>
     <username>admin</username>
     <password>admin</password>
   </server>
</servers>

サーバID(任意)と先ほど追加した管理者ユーザのユーザ名とパスワードを設定します。

アプリケーション作成とサーバ起動

4. IntelliJでアプリケーションを作成

IntelliJ を起動し、[New] -> [Project]を選択します。次に、[New Project]ダイアログが表示されるので、画像の通り、 [Maven] -> [Create from archetype] -> [maven-archetype-webapp] を選択し、[Next]をクリックします。

01_intellij_new_project.png

[GroupId] と [ArtifactId] を入力し、[Next]をクリックします。

02_intellij_new_project.png

内容に問題がなければ、[Next]をクリックします。

03_intellij_new_project.png

プロジェクトの保存先を指定し、[Finish]をクリックします。
04_intellij_new_project.png

プロジェクト作成はここまでです。
プロジェクト画面が開いたら、リポジトリの自動ダウンロードを設定しておくと便利です。

5. Tomcatの設定

次に、pom.xml を修正していきます。ここでは、プラグインのみを追加します。
configurationでは、settings.xmlに追記したid<server>に指定します。

05_intellij_pom_edit.png

右上の[Edit Configurations...]をクリックします。

06_intellij_edit_configuration.png

左ペインから[Tomcat Server] -> [Local]を選択します。次に、右上の[Configure]をクリックします。

07_intellij_tomcat_setting.png

[Tomcat Server]ダイアログの[Tomcat Home]に、Tomcatのインストールディレクトリを指定します。
今回の場合は、<インストール先>/tomcat/9.0.6/libexec となります。入力が完了したら、[OK]をクリックします。

08_intellij_tomcat_setting.png

[Server]画面に戻り、[Application Server]にTomcat 9.0.6と表示されていることを確認し、[OK]をクリックします。

09_intellij_tomcat_setting.png

次に、左上の[+]ボタンをクリックし、[Tomcat Server] -> [Local] を選択します。

10_intellij_tomcat_add_setting.png

[Name]に任意の設定名(demo-server)を入力し、[Application Server]では、Tomcat 9.0.6 を選択します。次に、[Deployment]をクリックします。

11_intellij_tomcat_add_setting.png

[+]ボタンをクリックする。次に、[Select Artifacts Deploy]ダイアログで、デプロイするアプリケーション(demo.war)を選択し、[OK]をクリックします。

12_intellij_tomcat_add_setting.png

[Application context]に、コンテキストルートを設定し、[OK]をクリックします。

13_intellij_tomcat_add_setting.png

6. Tomcat 起動と再デプロイ

トップ画面に戻り、右上を[demo-server]に設定し、実行[>]ボタンをクリックします。

14_intellij_top.png

画面下にコンソールが出力されるので、エラーが出ないことを確認します。

15_intellij_run_server.png

トップページが表示されることを確認します。デフォルトでは、Hello World! と出力されます。

16_welcom_page.png

ここまでの流れで、サーバが起動し、トップ画面が表示されることが確認できました。
次にファイルを修正し、デプロイする流れを確認していきます。

IntelliJに戻し、JSPを修正します。今回は、Hello World!をHello World!!!に修正します。
次に、[Maven Project] -> [tomcat7:deploy]をクリックします。

17_intellij_edit_jsp.png

画面下にコンソールが出力されるので、エラーが出ないことを確認します。

18_intellij_app_deploy.png

ブラウザに戻り、先ほど表示していた画面をリロードします。Hello World!!!に変わっていることを確認します。

19_reload_welcome_page.png

最後に

長ったらしい手順みたいになってしまいましたが、最後まで読んでいただきありがとうございます。

今回は、今までよく使われていたような構成で開発環境構築をしてみました。
私ごとですが、現在の業務では、Windows + Eclipse + Tomcatといった環境で作業しているため、Mavenプラグインの設定部分やIntelliJの設定部分で結構はまってしまいましたが、一応調べきり、動作するところまで確認できたので、よかったと思っています。

本記事に関するツッコミなどがあれば、ご連絡いただければと思います。