Maven使用tomcat7-maven-plugin


原文地址:https://www.cnblogs.com/mozisss/p/10233366.html

功能:

(使用maven中的tomcat插件,就可以將tomcat集成到項目中,效果就是:在不同平台中無需配置tomcat就可以直接運行web)

地址:

tomcat官網maven插件:http://tomcat.apache.org/maven-plugin.html

 

使用方法:

(1)在maven項目的pom.xml中添加插件依賴:

 <pluginManagement>
     <plugins>
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.2</version>
            <configuration>
              <path>/mozi</path>
              <port>8080</port>
              <uriEncoding>UTF-8</uriEncoding>
            </configuration>
         </plugin>
      </plugins>
    </pluginManagement>
 (解釋:

      path: 當前web項目的url訪問入口,即http://localhost:8080/mozi/ ; 若設置為<path>/</path> 則訪問url為:http://localhost:8080/

      port:訪問的端口號

     uriEncoding: uri的訪問編碼)

 

  (2)等待插件加載完后,在就可以使用maven命令運行tomcat7了,這里用的是idea:

 

 

(maven命令:mvn tomcat7:run )

  (3)啟動結果:

 

 

 (4)測試: 在瀏覽器中輸入http://localhost:8080/mozi , 將訪問到項目mozi的index.jsp

 

 tomcat7-maven-plugin的其他命令:

tomcat7:run         --啟動嵌入式tomcat ,並運行當前項目
tomcat7:deploy      --部署一個web war包
tomcat7:reload      --重新加載web war包
tomcat7:start       --啟動tomcat
tomcat7:stop        --停止tomcat
tomcat7:undeploy    --停止一個war包

遇到過的坑:

   (1)啟動tomcat7時異常:java.lang.ClassNotFoundException: org.apache.catalina.deploy.ServletDef

             在pom.xml文件中,添加tomcat7-maven-plugin后不要添加tomcat7的其他依賴,如果有就去掉。如下面是tomcat7的包依賴,即<dependency>和<plugin>選其一:

<dependency>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>
</dependency>

  (否則,在啟動時tomcat會在tomcat/lib 下加載包,但在嵌入式tomcat目錄中沒有lib)

 

  

   (2)啟動時:java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter

               在項目目錄下 target/tomcat/conf/context.xml 添加:

 

<Context> <Loader delegate="true" /></Context>

  (關於tomcat的delegate機制,,,)

注:由於配置的環境、依賴包版本的不同,以上介紹的方法可能有所不同) 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM