このチュートリアルでは、http://tomcat.apache.org/maven-plugin.html[Maven-Tomcat plugin]を使用してTomcat 6と7の両方でTomcatにWARファイルをパッケージ化してデプロイする方法を説明します。
使用されるライブラリ:
-
Maven 3
-
Tomcat 6.0.37
-
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]------------------------------------------------------------------------
参考文献
Tomcat 7 Manager App HOW-TO]。
http://tomcat.apache.org/tomcat-6.0-doc/manager-howto.html
[Apache
Tomcat 6 Manager App HOW-TO]。
Tomcat Maven Plugin
Mavenプラグイン – コンテキストの目標]