eclipse maven项目中使用tomcat插件部署项目

maven的tomcat插件部署web项目,我简单认为分两种,一种是部署到内置tomcat,另外一种是部署到安装的tomcat。html

第一种部署,默认是部署在内置tomcat的8080端口,若是不须要改端口及其余设置,彻底能够不用在pom中配置tomcat插件web

若是须要改端口,可参考以下配置:spring

复制代码
 <build>
 <plugins>
  <plugin>
   <groupId>org.codehaus.mojo</groupId>
   <artifactId>tomcat-maven-plugin</artifactId>
   <version>1.1</version>
   <configuration>
    <path>/Demo1</path>
    <port>8088</port>
    <uriEncoding>UTF-8</uriEncoding>
    </configuration>
  </plugin>
 </plugins>
</build>
复制代码

而后执行mvn clean tomcat:deploy,  最后mvn tomcat:run能够启动内置tomcat。apache

 

内置tomcat部署比较简单,下面主要讲本地安装的tomcat部署tomcat

一、准备工做maven

    下载安装并配置好Tomcat和Maven。ui

    准备好一个Maven Web项目。url

二、Maven部署Web项目到Tomcat的配置spa

 

  2.1  Maven自动部署实际上调的是Tomcat安装目录下的manager功能。而为了能正常访问http://localhost:8080/manager页面,咱们须要修改$TOMCAT_HOME/conf目录下的tomcat-users.xml:.net

 

复制代码
<tomcat-users>
  <role rolename="tomcat"/>
  <role rolename="manager"/>
  <role rolename="manager-gui"/>
  <role rolename="manager-script" />
  <role rolename="admin-gui"/>
  <user username="tomcat" password="tomcat" roles="tomcat,manager,
      manager-gui,manager-script,admin-gui" />
</tomcat-users>
复制代码

ps:用maven的tomcat插件部署项目,个人理解是调用manager-script的权限,用脚本的方式执行命令,manager-gui应该是界面方式部署,也就是相似webLogic那样打开管理页面,完后本身选择项目部署。我的以为有manager-script的权限就能够了。

2.二、修改Maven的settings.xml

   在$USER_HOME/.m2目录下找到settings.xml,添加server节点:

复制代码
<servers>
    <server>
       <id>tomcat</id>
       <username>tomcat</username>
       <password>tomcat</password>
    </server>
</servers>
复制代码

 

2.三、修改pom.xml增长Tomcat Maven插件

   我使用的Tomcat6,pom.xml中增长以下配置:

复制代码
...
<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <version>1.1</version> <configuration> <path>/Demo1</path> <port>8080</port> <uriEncoding>UTF-8</uriEncoding> <url>http://localhost:8080/manager/html</url> <server>tomcatServer</server> <username>tomcat</username> <password>tomcat</password> </configuration> </plugin> </plugins> </build>
复制代码

若是是tomcat7插件:

复制代码
<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring.version>3.2.2.RELEASE</spring.version>
        <finalName>web-loab</finalName>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <configuration>
                    <url>http://localhost:8080/manager/text</url>
                    <server>tomcat</server>
                    <username>tomcat</username>
                    <password>tomcat</password>
                    <path>/Demo1</path>
                </configuration>
            </plugin>
        </plugins>
    </build>
复制代码

 

上面username、password来自tomcat-users.xml。server来自settings.xml指定的server的id。path是访问应用的路径。url指定Tomcat管理页路径。

 

 2.四、部署项目到Tomcat

mvn clean tomcat:redeploy

而后 mvn tomcat:run就能够用插件启动本地安装的tomcat。
 

PS:另外我据说mvn的tomcat插件只能启动一个项目,实践中发现是这么回事,可是没找到资料证明,你们有意见和建议请赐教。

 

参考文档:http://my.oschina.net/feichexia/blog/326893