maven tomcat 插件将项目部署至tomcat根目录

1. pom.xml 添加 tomcat插件:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.2</version>
            <configuration>
                <path>/</path>
                <url>http://127.0.0.1:8080/manager/text</url>
                <update>true</update>
                <server>tomcat</server>
                <username>tomcat</username>
                <password>tomcat</password>
            </configuration>
        </plugin>
    </plugins>
</build>
  • 这里的url为tomcat manager的url,后面一定是/manager/text,这个是manager上传war包的路径;
  • 这里的path为“/”,指tomcat根目录,即,访问链接为:127.0.0.1:8080;
  • update节点为true,这样每次deploy的时候,就会更新之前的war包,不然会报错;

2. server节点在maven conf/setting.xml里设置,这是maven的配置: 

  <servers>
    <server>
      <id>other</id>
      <username>admin</username>
      <password>admin</password>
    </server>
    <server>
      <id>tomcat</id>
      <username>tomcat</username>
      <password>tomcat</password>
    </server>
<servers>
  • 这里的server可以配置多个,只要ID不一样就可以;

3. tomcat配置里,添加tomcat user:

153934_SjmL_101827.png

 <tomcat-users>
  <role rolename="tomcat"/>
  <role rolename="admin-script"/>
  <role rolename="manager-script"/>
  <role rolename="manager-gui"/>
  <role rolename="manager-jmx"/>
  <role rolename="manager-status"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="admin" password="admin" roles="admin,admin-script,manager-gui,manager-script,manager-jmx,manager-status"/>
  <user username="tomcat" password="tomcat" roles="manager-script" />
</tomcat-users>
  • 这里是比较坑的地方,tomcat的manager-admin角色和manager-gui角色不能同时给一个账号使用;需要分开;
  • 所以上面pom.xml和maven的server里面使用的都是tomcat这个账号,这个是专门用manager-script这个角色的;

4. tomcat的server.xml不需要做任何处理,不需要加context path="/"节点,加了就不对了:

<Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true">
   <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
      prefix="localhost_access_log" suffix=".txt"
      pattern="%h %l %u %t &quot;%r&quot; %s %b" />        
</Host>
  • 这里不需要添加context节点;
  • autoDeploy要设置为true,unpackWARs也为true;

5. 启动8080端口的tomcat,然后IDE里,点击“tomcat7”》“tomcat7:deploy”,会将war包上传到tomcat的webapps根目录:
部署之前:
    153954_yGah_101827.png
 这里保留tomcat的manager项目
 点击“deploy”:
    154010_XOeF_101827.png
部署日志:    

[INFO] <<< tomcat7-maven-plugin:2.2:deploy (default-cli) < package @ project <<<
[INFO] 
[INFO] --- tomcat7-maven-plugin:2.2:deploy (default-cli) @ project ---
[INFO] Deploying war to http://127.0.0.1:8080/  
Uploading: http://127.0.0.1:8080/manager/text/deploy?path=%2F&update=true
Uploaded: http://127.0.0.1:8080/manager/text/deploy?path=%2F&update=true (21698 KB at 61291.7 KB/sec)
[INFO] tomcatManager status code:200, ReasonPhrase:OK
[INFO] OK - Deployed application at context path /
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 18.025 s
[INFO] Finished at: 2017-03-24T15:30:10+08:00
[INFO] Final Memory: 29M/448M
[INFO] ------------------------------------------------------------------------
Process finished with exit code 0

部署之后:
    154027_7KBM_101827.png
     maven tomcat插件会将war自动重命名为ROOT.war,之后上传到webapps的目录,然后tomcat会自动将war包解压,实现自动部署。
6. 访问:http://127.0.0.1:8080/  

 

转载于:https://my.oschina.net/wower/blog/866320

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值