maven生成war包,发布到tomcat中
======================
获得tomcat的manager用户名和密码
再tomcat下的conf文件夹中找到tomcat-users.xml
获得其用户名和密码
我们使用用户名:tomcat,密码:tomcat来登陆。
在pom中注册插件
<!-- properties -->
<properties>
<finalName>testWAR</finalName>
</properties>
<!-- snapshot & release -->
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.0.6.RELEASE</version>
</dependency>
</dependencies>
</dependencyManagement>
<!-- plugin war -->
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<url>http://localhost:8080/manager</url>
<username>tomcat</username>
<password>tomcat</password>
<path>/${finalName}</path>
</configuration>
</plugin>
</plugins>
</build>
这里需要讲解的是build中注册的是插件,相信对maven有了解的对groupid和artifactid不陌生,值得注意的是configuration中的url是tomcat的manager地址,然后username,password就是从tomcat下的conf文件夹中找到tomcat-users.xml中找到的登陆信息。${finalName}中的finalName就是上面的properties中finalName标签中值,也就是war包的名字。dependencies标签本文不需要关注,是相关jar包的坐标信息。
执行maven部署
再maven build总运行tomcat:deyloy这个命令就可以打war包到tomcat中了,如果再次部署就是tomcat:redeploy命令。
注意,一定要有用户和密码,并且启动server才可以执行,否则报错。如果发现tomcat-users.xml文件的用户密码总被自动改写,是因为eclipse中有一个server的工程,它总是用工程内的文件替换tomcat的文件,所以新增的用户名和密码最好在eclipse中的server工程中新增。