1、环境如下
idel、apache-maven-3.0.5、apache-tomcat-7.0.39
2、配置如下
1) 因为tomcat7默认情况下没有配置manager访问权限,所以这里需要在tomcat-users.xml加入用户以及权限
<tomcat-users>
<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"/>
</tomcat-users>
2)工程目录下的pom.xml文件,加入build,并配置tomcat7的maven插件,如下配置
添加插件:
<!-- 配置Tomcat插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<charset>utf8</charset>
<update>true</update>
<url>${p.cn.tomcat.url}</url>
<username>${p.cn.tomcat.username}</username>
<password>${p.cn.tomcat.password}</password>
<!--<path>/informations</path>-->
<path>/${project.build.finalName}</path>
</configuration>
</plugin>
${project.build.finalName}这个是根据xml的路径来标记的;
最终的的配置文件如下:
<build>
<finalName>informations</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>env/${build.environment}</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<webXml>src/main/webapp/WEB-INF/web.xml</webXml>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
</plugin>
<!-- 配置Tomcat插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<charset>utf8</charset>
<update>true</update>
<url>${p.cn.tomcat.url}</url>
<username>${p.cn.tomcat.username}</username>
<password>${p.cn.tomcat.password}</password>
<path>/${project.build.finalName}</path>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>local</id>
<activation>
<property>
<name>env</name>
<value>local</value>
</property>
</activation>
<properties>
<build.environment>local</build.environment>
</properties>
</profile>
<profile>
<id>tst</id>
<activation>
<!--默认开发环境-->
<activeByDefault>true</activeByDefault>
<property>
<name>env</name>
<value>tst</value>
</property>
</activation>
<properties>
<build.environment>tst</build.environment>
<p.cn.tomcat.url>111.1.1.1:8080/manager/text</p.cn.tomcat.url>
<p.cn.tomcat.username>admin</p.cn.tomcat.username>
<p.cn.tomcat.password>admin</p.cn.tomcat.password>
</properties>
</profile>
<profile>
<id>int</id>
<activation>
<property>
<name>env</name>
<value>int</value>
</property>
</activation>
<properties>
<build.environment>int</build.environment>
<p.cn.tomcat.url>111.1.1.1:8080/manager/text</p.cn.tomcat.url>
<p.cn.tomcat.username>admin</p.cn.tomcat.username>
<p.cn.tomcat.password>admin</p.cn.tomcat.password>
</properties>
</profile>
<profile>
<id>prod</id>
<activation>
<property>
<name>env</name>
<value>prod</value>
</property>
</activation>
<properties>
<build.environment>prod</build.environment>
</properties>
</profile>
</profiles>
3、命令部署
mvn clean install -Denv=tst -Dmaven.test.skip=true tomcat7:redeploy
或
mvn clean install -Ptst -Dmaven.test.skip=true tomcat7:redeploy
**tomcat6和tomcat7的配置有出入,需要自己再仔细查看其他博客;