maventomcatplugin如何實現(xiàn)熱部署

這篇文章主要為大家展示了“maven tomcat plugin如何實現(xiàn)熱部署”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“maven tomcat plugin如何實現(xiàn)熱部署”這篇文章吧。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序定制開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了彌勒免費建站歡迎大家使用!

1、Tomcat7的用戶及權(quán)限配置

要實現(xiàn)熱部署,自然就需要通過maven操作tomcat,所以就需要maven取得操作tomcat的權(quán)限,現(xiàn)在這一步就是配置tomcat的可操作權(quán)限。

在tomcat的安裝目錄下,修改conf / tomcat-user.xml文件,在<tomcat-users>節(jié)點下面增加如下配置:

<role rolename="manager-gui" /> 
<role rolename="manager-script" /> 
<user username="tomcat" password="tomcat" roles="manager-gui, manager-script" />

2、Maven的server的配置

在Maven的安裝路徑找到,修改D:\develop_tools\maven\apache-maven-3.3.9\conf \setting.xml文件 ,在<server>節(jié)點中添加tomcat7下配置的用戶信息(id可以任意填寫,但username和password必須和步驟1一致)

<server>  
  <id>tomcat7</id>  
  <username>tomcat</username>  
  <password>tomcat</password>  
</server>

3、Web項目pom.xml的配置

3.1、apache官方tomcat插件的配置

tomcat7的配置:

<plugins> 
   <!-- 第一種方式: apache官方tomcat插件,支持deploy --> 
   <plugin> 
     <groupId>org.apache.tomcat.maven</groupId> 
     <artifactId>tomcat7-maven-plugin</artifactId> 
     <version>2.0-SNAPSHOT</version> 
     <configuration> 
       <url>http://localhost:8080/manager/text</url> 
       <server>tomcat7</server> 
     </configuration> 
   </plugin>  
</plugins>

3.2 第三方tomcat插件,支持redeploy

tomcat7的配置:

<plugin> 
  <groupId>org.codehaus.mojo</groupId> 
  <artifactId>tomcat-maven-plugin</artifactId> 
  <version>1.1</version> 
  <configuration> 
    <url>http://localhost:8080/manager/text</url> 
    <server>tomcat7</server> 
    <ignorePackaging>true</ignorePackaging> 
  </configuration> 
</plugin>

3.3 maven倉庫的配置 (此為可選項):

<repository> 
  <id>people.apache.snapshots</id> 
  <url>http://repository.apache.org/content/groups/snapshots-group/</url> 
  <releases> 
    <enabled>false</enabled> 
  </releases> 
  <snapshots> 
    <enabled>true</enabled> 
  </snapshots> 
</repository> 

<pluginRepository> 
  <id>apache.snapshots</id> 
  <name>Apache Snapshots</name> 
  <url>http://repository.apache.org/content/groups/snapshots-group/</url> 
  <releases> 
    <enabled>false</enabled> 
  </releases> 
  <snapshots> 
    <enabled>true</enabled> 
  </snapshots> 
</pluginRepository>

4、設(shè)置部署命令

一般使用搜是在eclipse中,可以右鍵點擊需要部署的項目,Run as -> Run configurations -> maven build -> 右鍵 new,這樣配置一個新的maven命令

具體配置命令方法:

1.在base directory中選擇自己的項目
2.Goals的配置

如果使用apache的官方插件,那么就用 “tomcat7:deploy” 命令

如果使用第三方插件,那么就用 “tomcat:redeploy”命令

5、附相關(guān)錯誤及解決辦法:

Connection refused錯誤

報錯信息如下:

[ERROR]Failed to execute goal org.apache.tomcat.maven: tomcat7-maven-plugin: 2.0- SNAPSHOT: deploy (default-cli) on project helloworld: Cannot invoke Tomcat manager: Connection refused: connect -> [Help 1]

原因:未啟動Tomcat服務(wù)器

解決辦法:先啟動Tomcat服務(wù)器再選擇Run

undeploy 失敗

在Window系統(tǒng)下執(zhí)行在執(zhí)行 mvn tomcat7:undeploy時,會有殘留在tomcat目錄下

解決方法:在tomcat的配置文件context.xml中 的< Context >標簽中添加屬性:antiJARLocking=”true”

antiResourceLocking=”true”

<Context antiJARLocking="true" antiResourceLocking="true">

401錯誤

報錯信息如下:

[ERROR] Failed to execute goal org.apache.tomcat.maven:tomcat7-maven-plugin: 2.0-SNAPSHOT:deploy (default-cli) on project helloworld: Cannot invoke Tomcat manager: Server returned HTTP response code: 401 for URL: http://localhost:8080/manager/text/deploy?path=%2Fhelloworld -> [Help 1]

原因:權(quán)限問題

解決辦法在$CATALINA_BASE/conf/tomcat-users.xml,

如D:\apache-tomcat-7.0.34\conf\tomcat-users.xml文件中添加權(quán)限

<role rolename=”manager”/>
<user username=”admin” password=”admin” roles=”manager”/>

修改pom.xml文件,在<configuration> </configuration>中添加

<username>admin</username>
<password>admin</password>

403錯誤

報錯信息如下:

[ERROR] Failed to execute goal org.apache.tomcat.maven:tomcat7-maven-plugin: 2.0-SNAPSHOT:deploy (default-cli) on project helloworld: Cannot invoke Tomcat manager: Server returned HTTP response code: 403 for URL: http://localhost:8080/manager/html/deploy?path=%2Fhelloworld -> [Help 1]

原因:產(chǎn)生該問題有可能因為兩個原因,具體參見解決辦法

解決辦法:

1)如果使用的是Tomcat 7,需要修改pom.xml中部署的url地址,將<url>http://localhost:8080/manager</url>改<url>http://localhost:8080/manager/text</url>

2)給tomcat用戶權(quán)限分配上,需要同時具備manager-gui和manager-script權(quán)限,我在遇到該問題時,就是忘了分配manager-script權(quán)限。

正確的conf/tomcat-users.xml配置應(yīng)為:

<tomcat-users>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="admin” password="admin" roles="manager-gui, manager-script"/>
</tomcat-users>

以上是“maven tomcat plugin如何實現(xiàn)熱部署”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文標題:maventomcatplugin如何實現(xiàn)熱部署
鏈接URL:http://muchs.cn/article18/jcgjgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機全網(wǎng)營銷推廣、響應(yīng)式網(wǎng)站、軟件開發(fā)網(wǎng)站設(shè)計、手機網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站