一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - maven tomcat plugin實現熱部署

maven tomcat plugin實現熱部署

2021-05-12 15:49xiaojin21cen Java教程

這篇文章主要介紹了maven tomcat plugin實現熱部署,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1、Tomcat7的用戶及權限配置

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

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

?
1
2
3
<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>節點中添加tomcat7下配置的用戶信息(id可以任意填寫,但username和password必須和步驟1一致)

?
1
2
3
4
5
<server
  <id>tomcat7</id
  <username>tomcat</username
  <password>tomcat</password
</server>

3、Web項目pom.xml的配置

3.1、apache官方tomcat插件的配置

tomcat7的配置:

?
1
2
3
4
5
6
7
8
9
10
11
12
<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的配置:

?
1
2
3
4
5
6
7
8
9
10
<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倉庫的配置 (此為可選項):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<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、設置部署命令

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

具體配置命令方法:

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

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

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

5、附相關錯誤及解決辦法:

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服務器

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

undeploy 失敗

在Window系統下執行在執行 mvn tomcat7:undeploy時,會有殘留在tomcat目錄下

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

?
1
antiResourceLocking=”true”

?
1
<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]

原因:權限問題

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

如D:\apache-tomcat-7.0.34\conf\tomcat-users.xml文件中添加權限

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

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

?
1
2
<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]

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

解決辦法:

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

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

正確的conf/tomcat-users.xml配置應為:

?
1
2
3
4
5
<tomcat-users>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="admin” password="admin" roles="manager-gui, manager-script"/>
</tomcat-users>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/xiaojin21cen/article/details/78570254

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲美色综合天天久久综合精品 | 黄色a∨ | 日韩在线 中文字幕 | 免费看国产一级片 | 大乳一级一区二区三区 | 国产色网 | 国产精品免费网站 | 国内精品麻豆 | 羲义嫁密着中出交尾gvg794 | 青青自拍视频 | hh99me福利毛片 | 亚洲天堂中文字幕 | 国产xxxxxx久色视频在 | 亚洲天堂免费看 | 国产成人精品午夜在线播放 | 黄德维| 99re5精品视频在线观看 | 国产免费看视频 | 动漫美女被褥吸奶漫画漫画 | 精品老司机在线视频香蕉 | 国产全部理论片线观看 | 精品久久日日躁夜夜躁AV | 日韩精品一区二区三区中文版 | 美女的隐私视频免费看软件 | 欧美亚洲第一区 | 97se狠狠狠狠狼亚洲综合网 | 亚洲精品国产AV成人毛片 | 国产成人在线播放视频 | 无毛黄片 | 高清麻生希在线 | 8x8x丝袜美女 | 性色AV乱码一区二区三区视频 | ffee性xxⅹ另类老妇hd | 国产免费一区二区三区 | 色呦阁| 亚洲大片在线观看 | 色中色软件 | 久久成人精品免费播放 | 龟甲情感超市全文阅读 小说 | 五月天综合久久 | 欧美人在线一区二区三区 |