Maven 2 で Tomcat 7 にデプロイする

maven2 を利用することにしてみた。maven3 の本も出版されたこともあるし。

Ubuntu 11.10 上の Tomcat 7 に対して tomcat7-maven-plugin を利用してデプロイしてみた。
maven2、tomcat7、tomcat7-admin パッケージがインストールされていることが前提。

/etc/tomcat7/tomcat-users.xml にロールとユーザーを追加する。

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

/etc/maven2/settings.xml に、localhost 用のIDとパスワードを設定する。

  <servers>
    <server>
      <id>localhost</id>
      <username>tomcat-admin</username>
      <password>tomcat-admin</password>
    </server>
  </servers>

pom.xmlプラグインの設定を追加する。

    <plugins>
        <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.0-beta-1</version>
          <configuration>
            <server>localhost</server>
            <path>/ROOT</path>
            <update>true</update>
          </configuration>
        </plugin>
    </plugins>

tomcat6-maven-plugin との違いで困ったことは、redeploy/undeploy ゴールがなくなってしまったこと。デプロイ済みのパスに対して更新するために、update という設定を true にしている。
参考:
http://tomcat.apache.org/maven-plugin-2.0-SNAPSHOT/tomcat7-maven-plugin/deploy-mojo.html

試しにコマンド実行してみる。

 $ mvn tomcat7:deploy