菜鸟教程之工具使用(三)——Maven自动部署到Tomcat

书接上回,上一篇博客介绍了如何用Maven将项目打包,这篇文章就说一下如何用Maven将打完的war包部署到Tomcat,而不是手动的copy过去。


目前比较流行的方式有两种:一种是利用Tomcat官方的Maven插件;一种是利用cargo插件。下面挨个说怎么配置。


Tomcat插件:

在Tomcat的tomcat-users.xml文件中加入如下配置:

<!--Tomcat-users文件配置-->
<tomcat-users>
    <role rolename="manager"/>    
    <role rolename="admin"/>  
    <role rolename="manager-gui"/>    
    <role rolename="manager-script"/>    
    <user username="admin" password="admin123" roles="manager-script,manager-gui,manager,admin"/>   
</tomcat-users>


在Maven的Setting.xml文件中加入如下配置:

<!--Setting文件需要添加-->
<server>  
    <id>tomcat7x</id>  
    <username>admin</username>  
    <password>admin123</password>  
</server>

在Maven的pom.xml文件的project——>build——>plugins

<!-- Tomcat插件自动部署配置 -->
<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
     <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
     <configuration>
        <!-- Tomcat6将text替换为html-->
        <url>http://localhost:7070/manager/text</url>
        <!-- 以下三项与Maven的Setting文件一致 -->
        <server>tomcat7x</server>  
        <username>admin</username>  
        <password>admin123</password>
    </configuration>
</plugin>


接下来:1,pom.xml文件右击——>run as 执行Maven的clean;2,手动启动Tomcat,运行startup.bat;3,右击pom运行命令换成package tomcat7:redeploy。


cargo插件:


同样也需要在tomcat-users.xml文件和Maven的Setting.xml文件配置用户信息,这里就不重复了。


pom.xml文件中同样在plugins加入配置信息:

<plugin>
    <groupId>org.codehaus.cargo</groupId>
    <artifactId>cargo-maven2-plugin</artifactId>
    <version>1.4.9</version>
    <configuration>
        <container>
            <containerId>tomcat6x</containerId>
            <home>D:apache-tomcat-6.0.36</home>
        </container>
        <configuration>
            <type>existing</type>
            <home>D:apache-tomcat-6.0.36</home>
        </configuration>
    </configuration>
</plugin>

接下来可以使用cargo:run命令在Eclipse中启动Tomcat并部署项目,也可以用cargo:deploy命令将项目部署到已经在外部启动的Tomcat。使用cargo:run之前需要使用install命令将项目打包,可以直接用组合命令:install cargo:run,这样打完包后会自动运行。


好了,两种方式都介绍完了,选一个你喜欢的用就好了。欢迎交流,下次再见!



原文地址:https://www.cnblogs.com/liushuijinger/p/4000954.html