Maven 部署项目到 Tomcat

Tomca7/8 与 tomcat6 的部署有小小区别。

一、Tomca7/8 教程

1.1 Tomcat Authentication

添加有 manager-guimanager-script 角色的用户到tomcat用户配置中:

%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 Authentication

把以上 Tomcat user 添加到 Maven 配置文件中,稍后 Maven 将使用该账号管理及部署项目到 Tomcat 中。

修改配置文件:全局的 %M2_HOME%/conf/settings.xml 或用户级的 ~/.m2/settings.xml

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

说明:

  • id 是该 server 的 ID 标识。
  • username 对应 Tomcat 中配置 user 的 username
  • password 对应 Tomcat 中配置 user 的 password

1.3 Tomcat7 Maven Plugin

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>tomcat7</server>
        <path>/myapp</path>
    </configuration>
</plugin>

说明:

  • 虽然插件坐标是 tomcat7-maven-plugin,但是对 Tomcat8 也能使用。
  • url 是 Tomcat 部署的地址,端口号按实际情况修改。
  • server 对应 Maven settings.xml 文件中配置的 server ID。
  • path 是项目部署到 Tomcat 后的项目名称(上下文)。不能只写成:/ 。但也必须以 / 开头! 一般与项目 artifactId 一致可以这样写:<path>/${project.artifactId}</path>

工作过程:Maven 通过 http://localhost:8080/manager/text 部署 war 到 Tomcat,访问该项目的路径是 /myapp ,使用 settings.xml 中的 ID 为 tomcat7 的 username 和 password 进行 Tomcat 身份认证。

1.4 Deploy to Tomcat

Warn:前提是先启动 Tomcat !

三个命令:部署、移除部署、重新部署:

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

虽然是 tomcat7 字样,但是对 Tomcat8 也适用!

二、Tomcat6 上的小区别

其他步骤过程都一样。

pom.xml

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

区别:

部署命令

# mvn tomcat6:deploy
# mvn tomcat6:undeploy
# mvn tomcat6:redeploy

区别:

  • 目标是 tomcat6,而 Tomcat7/8 的是 tomcat7。

三、其他常用 Gold

Gold说明
mvn tomcat6:startTo start a WAR in Tomcat
mvn tomcat6:stopTo stop a WAR in Tomcat
mvn tomcat6:sessionsTo list the session statistics for a deployed WAR project
tomcat:run启动内嵌的 Tomcat 并运行当前项目

四、参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值