使用tomcat-maven-plugin自動化部署應用

  目標:將應用自動打包並自動部署到遠程tomcat容器。web

1.在pom.xml中添加plugin apache

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
    <configuration>
        <encoding>UTF-8</encoding>
        <!--實現熱部署 -->
        <contextReloadable>true</contextReloadable>
        <!-- 部署應用的context path -->
        <path>/${project.artifactId}</path>
        <!-- Tomcat Manager 的URL,用於部署和取消部署的web應用程序,默認使用manager實例  -->
        <url>http://localhost:8080/manager/text</url>
        <update>true</update>
        <!-- Tomcat Manager的用戶名和密碼,須要在conf/context-user.xml中配置manager-script角色 -->
        <username>admin</username>
        <password>admin123</password>
       </configuration>
    </plugin>    

2.說明tomcat

  a.使用tomcat-maven-plugin也行,tomcat7-maven-plugin最近的版本是2.2,仍是2013年更新的,目前還沒看到tomcat8-maven-plugin,不過已經夠用了。安全

  b.在自動化部署以前,tomcat的webapps中必須有manager這個原生應用,用戶管理容器中全部的應用(默認容器就已經有了),在/conf/tomcat-users.xml中必須配置幾個角色,固然這些都是容器默認的,你們都知道,若是是生產環境記得注意安全問題。app

<role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <role rolename="manager-jmx"/>
  <role rolename="manager-status"/>
  <user username="admin" password="admin123" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

  c.<url>這裏既能夠填寫本地的也能夠是遠程的,<update>表示若是已經部署是否從新部署webapp

  d.最後就是啓動了,打開maven命令界面,輸入tomcat7:deploy 或redeploymaven

  e.這裏擴展幾個tomcat命令ui

    compile 默認,每一個命令都會先執行這個,能夠不用顯示填寫url

    deploy 部署應用到Tomcatspa

    undeploy 取消部署

    start 啓動web

    reload 從新加載web

    stop 中止web

相關文章
相關標籤/搜索