eclipse中maven项目部署到tomcat

其实maven项目部署到tomcat的方式不少,我从一开始的打war包到tomcat/webapps目录,到使用tomcat-maven插件,到直接使用servers部署,一路来走过不少弯路。web

下面就一一介绍这几种部署方式:apache

1.打war包到tomcat/webapps目录tomcat

这种方式其实跟非maven项目没什么区别,就是打包的方式不一样服务器

以后在target目录下会生成war包,复制到tomcat/webapps目录即完成部署。app

 

2.使用tomcat-maven插件,在pom.xml的</dependencies>以后添加如下代码,并作相应修改webapp

 1   <build>
 2     <finalName>guoguo-maven-web</finalName>
 3     <plugins>
 4       <plugin>
 5           <!-- 3个可用插件 -->
 6         <groupId>org.apache.tomcat.maven</groupId>
 7         <artifactId>tomcat6-maven-plugin</artifactId>                    <!-- 命令为tomcat6:redeploy -->
 8         <!-- <groupId>org.apache.tomcat.maven</groupId> -->
 9         <!-- <artifactId>tomcat7-maven-plugin</artifactId> -->    <!-- 命令为tomcat7:redeploy -->
10         <!-- <groupId>org.codehaus.mojo</groupId> -->
11         <!-- <artifactId>tomcat-maven-plugin</artifactId> -->        <!-- 命令为tomcat:redeploy -->
12         <!-- <version>2.2</version> -->
13       <configuration>
14           <!-- <url>http://localhost:8080/manager</url> -->            <!-- tomcat6部署管理路径 -->
15           <url>http://localhost:8080/manager/text</url>                <!-- tomcat7部署管理路径 -->
16           <username>admin</username>                                <!-- tomcat的管理员帐号 -->
17           <password>admin</password>
18           <port>8080</port>
19           <path>/guoguo-maven-web</path>                            <!-- 部署路径 -->
20           <charset>UTF-8</charset>
21           <encoding>UTF-8</encoding>
22           <!-- 运行redeploy命令前,要能正常访问http://localhost:8080/manager-->
23       </configuration>
24       </plugin>
25   </plugins>
26   </build>

这样就配置好了tomcat maven插件maven

运行redeploy命令前,要启动tomcat,并能正常访问http://localhost:8080/manager测试

经过项目右键 run as --> maven build... --> main --> goals 中填入 tomcat6:redeploy命令便可部署成功,这样部署有时会使tomcat出错,出错须要重启tomcatui

 

3.直接使用servers部署url

首先确保编译配置正常

test下的目录编译到target/test-classes,其余编译到target/classes目录便可,其余通常默认不须要改变什么

而后进行部署的配置:

配置好以后,经过右键servers中tomcat,add and remove...添加项目,重启tomcat便可

 

第一种我已经不用了,第二种适合直接部署到测试服务器,第三种适合本地的调试

 

附录:

tomcat管理员配置,在servers项目的tomcat-users.xml中添加以下配置,若是你是直接使用bin/startup.bat启动tomcat,则修改conf/tomcat-users.xml

----------tomcat6管理员配置----------
<role rolename="manager"/>
<user username="admin" password="admin" roles="manager"/>
----------tomcat6管理员配置----------

----------tomcat7管理员配置----------<role rolename="manager-script" /><role rolename="manager-gui"/><user username="admin" password="admin" roles="manager-gui,manager-script"/>----------tomcat7管理员配置----------