開発者ドキュメント

MavenベースのwarファイルをTomcatにデプロイする方法

このチュートリアルでは、http://tomcat.apache.org/maven-plugin.html[Maven-Tomcat plugin]を使用してTomcat 6と7の両方でTomcatにWARファイルをパッケージ化してデプロイする方法を説明します。

使用されるライブラリ:

  1. Maven 3

  2. Tomcat 6.0.37

  3. Tomcat 7.0.53

1. Tomcat 7の例

この例では、WARファイルをパッケージ化してTomcat 7にデプロイする方法を示します。

  • 1.1 Tomcat認証**

    manager-gui`と

    manager-script`というロールを持つユーザを追加します。

%TOMCAT7__PATH%/conf/tomcat-users.xml

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>

    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <user username="admin" password="password" roles="manager-gui,manager-script"/>

</tomcat-users>
  • 1.2 Maven認証** TomcatのユーザをMaven設定ファイルに追加してください。後でMavenはこのユーザを使ってTomcatサーバにログインします。

%MAVEN__PATH%/conf/settings.xml

<?xml version="1.0" encoding="UTF-8"?>
<settings ...>
    <servers>

        <server>
            <id>TomcatServer</id>
            <username>admin</username>
            <password>password</password>
        </server>

    </servers>
</settings>
  • 1.3 Tomcat7 Maven Plugin ** Maven Tomcatプラグインを宣言します。

pom.xml

    <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
        <configuration>
            <url>http://localhost:8080/manager/text</url>
            <server>TomcatServer</server>
            <path>/mkyongWebApp</path>
        </configuration>
    </plugin>
  • どのように動作するのですか?** デプロイメント中、TomcatServerに “http://localhost:8080/manager/text”経由でWARファイルを “/mkyongWebApp”のパスに展開するようMavenに指示します。 xml)認証用のユーザー名とパスワード。

  • 1.4 Tomcatへの展開** Tomcat上のWARファイルを操作するコマンド。

mvn tomcat7:deploy
mvn tomcat7:undeploy
mvn tomcat7:redeploy

> mvn tomcat7:deploy

...

[INFO]Deploying war to http://localhost:8080/mkyongWebApp

アップロード中:http://localhost:8080/manager/text/deploy?path =%2FmkyongWebApp

[INFO]tomcatManager status code:200, ReasonPhrase:OK

[INFO]OK - Deployed application at context path/mkyongWebApp

[INFO]------------------------------------------------------------------------

[INFO]BUILD SUCCESS

[INFO]------------------------------------------------------------------------

[INFO]Total time: 8.507 s

[INFO]Finished at: 2014-08-05T11:35:25+08:00

[INFO]Final Memory: 28M/308M

[INFO]------------------------------------------------------------------------




=== 2. Tomcat 6 Example

This example shows you how to package and deploy a WAR file on Tomcat 6.
The steps are same with Tomcat 7, just the deploy url and command name
are different.

2.1 Tomcat Authentication

%TOMCAT6__PATH%/conf/tomcat-users.xml

<?xml version = '1.0' encoding = 'utf-8'?> <tomcat-users>

<role rolename = "manager-gui"/> <role rolename = "manager-script"/> <user username = "admin" password = "password" roles = "manager-gui、manager-script"/>

</tomcat-users>

2.2 Maven認証

%MAVEN__PATH%/conf/settings.xml

<?xml version = "1.0" encoding = "UTF-8"?> <settings ...> <servers> <server> <id> TomcatServer </id> <username> admin </username> <password> password </password> </server>

</servers>
</settings>

2.3 Tomcat6 Mavenプラグイン

pom.xml

<plugin>
        <groupId> org.apache.tomcat.maven </groupId>
        <artifactId> tomcat6-maven-plugin </artifactId>
        <version> 2.2 </version>
        <構成>
            <url> http://localhost:8080/manager </url>
            <server> TomcatServer </server>
            <path>/mkyongWebApp </path>
        </configuration>
    </plugin>

2.4 Tomcatにデプロイする

mvn tomcat6:deploy
mvn tomcat6:undeploy
mvn tomcat6:再デプロイ

> mvn tomcat6:deploy

...[INFO]Deploying war to http://localhost:8080/mkyongWebApp
Uploading: http://localhost:8080/manager/deploy?path=%2FmkyongWebApp
Uploaded: http://localhost:8080/manager/deploy?path=%2FmkyongWebApp (13925 KB at 32995.5 KB/sec)
[INFO]------------------------------------------------------------------------[INFO]BUILD SUCCESS[INFO]------------------------------------------------------------------------[INFO]Total time: 22.652 s[INFO]Finished at: 2014-08-05T12:18:54+08:00[INFO]Final Memory: 30M/308M[INFO]------------------------------------------------------------------------
モバイルバージョンを終了