Maven項目打包成war包部署到Tomcat的方法
有關(guān)于 Maven 項目的打包部署,我這里用的是 Eclipse 編輯器,以此來做個簡單的記錄。
實踐環(huán)境
操作系統(tǒng): Windows
IDE: Eclipse
打包部署過程
1 項目打包
1.1 右鍵點擊所需要打包的項目,點擊如圖所示 Maven clean
,這里 Maven 會清楚掉之前對這個項目所有的打包信息。
1.2 進(jìn)行完 Maven clean
操作后,在eclipse的控制臺會出現(xiàn)以下的信息。
1.3 然后我們重新右鍵所需打包的項目,點擊如圖所示 Maven build
1.4 在彈出的界面中,進(jìn)行如下圖的操作。
“Goals”輸入框中輸入 -X package
,同時勾選下方 Update Snapshots
和 Skip Tests
選項框。
1.5 出現(xiàn)以下結(jié)果則說明打包成功?!?/p>
1.6 刷新我們的項目,我們能在項目的 target
目錄下找到我們打包好的 war
包。
2 項目部署
2.1 將上述打包好的 war
包放置我們的 tomcat 的 webapps 目錄下。如圖所示。
2.2 修改 tomcat 中 conf 目錄下的配置文件 server.xml,在配置文件中找到Host標(biāo)簽,在其中添加如下內(nèi)容。這里使用的是相對路徑,doBase
屬性的值是我們所打 war
包的名稱(至于為什么要增加這一步,后面會做解釋)?!?/p>
2.3 進(jìn)入 tomcat 的 bin 目錄,點擊 startup.bat
啟動我們的tomcat。顯示如下結(jié)果則說明部署成功?! ?/p>
2.4 這時候我們打開瀏覽器輸入 localhost:8080
,就成功訪問到了我們的主頁。
說明
上述說到,在我們 tomcat 中的 conf 目錄中的 server.xml 配置文件中添加以下內(nèi)容。
我們先把原先的內(nèi)容注釋掉,重啟來看下會出現(xiàn)什么問題?!?/p>
注釋掉后,重啟我們的tomcat,然后在瀏覽器中訪問 localhost:8080
。
你會發(fā)現(xiàn)這個時候是請求不到我們的項目的。這種情況下在訪問路徑中加上我們的項目名稱再試下,訪問 http://localhost:8080/analysis-tool-web-1.0-SNAPSHOT/login
(項目的所有資源、請求都在 analysis-tool-web-1.0-SNAPSHOT
目錄下)。
到這一步基本跟之前一樣是沒什么問題的。問題就在我們點擊登錄以后,后面的請求路徑的變化。我嘗試進(jìn)行登錄,看登錄后的跳轉(zhuǎn)路徑。
這里缺省了我們的項目路徑 /analysis-tool-web-1.0-SNAPSHOT
,而當(dāng)前項目資源、請求都在 analysis-tool-web-1.0-SNAPSHOT
文件夾下。請求直接跳轉(zhuǎn)至 /
下,導(dǎo)致找不到資源的請求報404錯誤。在 server.xml 中配置以上內(nèi)容主要是為了為訪問項目設(shè)置資源的相對路徑。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
spring-boot報錯java: 程序包javax.servlet.http不存在
當(dāng)springboot項目從2.7.x的升級到3.0.x的時候,會遇到一個問題java: 程序包javax.servlet.http不存在,下面就來具體介紹一下,感興趣的可以了解一下2024-08-08Java利用剪貼板實現(xiàn)交換程序間數(shù)據(jù)的方法
這篇文章主要介紹了Java利用剪貼板實現(xiàn)交換程序間數(shù)據(jù)的方法,需要的朋友可以參考下2014-07-07Java?任務(wù)調(diào)度框架?Quartz實操
這篇文章主要介紹了Java?任務(wù)調(diào)度框架?Quartz,Quartz是OpenSymphony開源組織在Job?scheduling領(lǐng)域又一個開源項目,完全由Java開發(fā),可以用來執(zhí)行定時任務(wù),類似于java.util.Timer。,下面我們來學(xué)習(xí)一下關(guān)于?Quartz更多的詳細(xì)內(nèi)容,需要的朋友可以參考一下2021-12-12Java關(guān)鍵字volatile和synchronized作用和區(qū)別
這篇文章主要為大家詳細(xì)介紹了Java關(guān)鍵字volatile和synchronized的作用和區(qū)別,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06基于servlet的執(zhí)行原理與生命周期(全面解析)
下面小編就為大家分享一篇servlet的執(zhí)行原理與生命周期全面解析,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12用Maven插件生成Mybatis代碼的實現(xiàn)方法
本文主要介紹 Maven插件生成Mybatis代碼,現(xiàn)在做開發(fā)的朋友有好多用Maven 來管理代碼,這里給大家舉個例子,有需要的同學(xué)可以看下2016-07-07Java工具之ja-netfilter?2022.1?配置教程
這篇文章主要介紹了Java工具之ja-netfilter?2022.1?配置教程,本防火墻基于javaagent,所以目前只有基于java的程序能夠使用,需要的朋友可以參考下2022-04-04