前言
maven已经成为Java项目事实上的构建标准,如果能自动将项目部署至tomcat还是能节省很多人力的。下面我们使用maven的tomcat插件将web项目打包好的war包部署至tomcat里。
在项目的pom.xml加入tomcat7-maven-plugin插件
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://192.168.1.106:8080/manager/text</url>
<server>tomcat</server>
</configuration>
</plugin>
</plugins>
编辑tomcat-user.xml
加入以下内容
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="deploy" password="deploy" roles="manager-gui, manager-script"/>
tomcat-user.xml的路径在$catalina_home/conf/tomcat-user.xml,配置完成后重启tomcat生效
编辑maven的settings.xml
maven的settings.xml在$MAVEN_HOME/conf目录
在servers标签加入以下内容
<server>
<id>tomcat</id>
<username>deploy</username>
<password>deploy</password>
</server>
这里的id与pom.xml的server要对应上
部署和取消部署
以下是部署和取消部署的命令
mvn tomcat7:deploy
mvn tomcat7:undeploy
mvn tomcat7:deploy -Dmaven.test.skip=true #跳过测试部署
其它
1、pom.xml也可以配置部署的用户和密码,不需要配置settings.xml,但这种方式很容易会把信息泄漏,不推荐在生产环境中使用。
2、如果配置完成后运行部署命令出现403错误,检查配置也没问题的话重启tomcat,重启tomcat还是有问题的话重新安装一个纯净的tomcat。
参考资料
http://tomcat.apache.org/maven-plugin-trunk/tomcat7-maven-plugin/usage.html