maven学习五:maven集成tomcat插件发布web项目

时间:2021-11-18 15:41:51

本地环境

jdk1.7 64位 maven3.2 tomcat7 eclipse4.5

tomcat7用户及权限配置

在tomcat服务器下的conf目录下,找到tomcat-users.xml,添加manager权限的用户。这里我把所用的权限都添加给admin用户了,具体代码如下:

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

Maven的server配置

在Maven的安装路径找到conf目录下的setting.xml文件,在节点中添加tomcat7下配置的用户信息(id可以任意填写,但username和password必须和步骤1一致)

<server>
<id>tomcat7</id>
<username>admin</username>
<password>admin</password>
</server>

备注:这里的用户名和密码必须与上诉中配置的用户名和密码一致

web中pom.xml配置

<build>
<finalName>webdemo</finalName>
<plugins>
<!-- 指定编译jdk为1.7 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<target>1.7</target>
<resource>1.7</resource>
</configuration>
</plugin>
<!-- tomcat7插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/${project.build.finalName}</path>
<port>8080</port>
<uriEncoding>UTF-8</uriEncoding>
<finalName>${project.build.finalName}</finalName>
<!-- 名称必须与配置文件的id名称一致 -->
<server>tomcat7</server>
</configuration>
<!-- 在打包周期运行tomcat7 -->
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

项目右击Run As –Maven build…然后输入:tomcat7:run 看到如下信息表示启动成功。
注意必须输入的是tomcat7 因为是根据pom.xml配置中server中的id名称而来。
maven学习五:maven集成tomcat插件发布web项目
注意maven集成tomcat7插件地址:http://tomcat.apache.org/ 如下截图所示:
maven学习五:maven集成tomcat插件发布web项目

浏览器访问是否成功

在浏览器中输入:localhost:8080/webdemo
一下信息表示tomcat发布web项目成功。
注意这里与jetty访问不同的是配置了项目名
maven学习五:maven集成tomcat插件发布web项目

maven集成tomcat插件常见命令如下
tomcat7:deploy 部署一个web war包
tomcat7:reload 重新加载web war包
tomcat7:start 启动tomcat
tomcat7:stop 停止tomcat
tomcat7:undeploy 停止一个war包
tomcat7:run 启动嵌入式tomcat ,并运行当前项目