idea打包成war包部署到tomcat及訪問路徑問題(圖文詳解)
idea將web項(xiàng)目打包成war最重要的是配置atrificats。
首先打開file -》 project structure

創(chuàng)建之后,output directory即為輸出war包的路徑。Name可以隨意,之后點(diǎn)擊綠色+,打開directory content

選擇webapp目錄,記得勾選include in project build


點(diǎn)擊ok后,新建一個(gè)配置

選擇artificats


這樣就算配置完成,點(diǎn)擊run執(zhí)行之后,就到前面的output directory設(shè)置的文件夾里找到war包就行了。war包放到tomcat的webapp目錄下,再啟動(dòng)tomcat就能訪問項(xiàng)目了。
項(xiàng)目的訪問地址是localhost:8080/你的war包名稱/index
在這里想說一下的是由于war包的名稱決定了訪問地址,所以當(dāng)采用純html+css+js寫頁面時(shí),在頁面的資源引用地址最好加上你的項(xiàng)目名稱(即你的最終war包命名),例如引用js文件:
<link rel='stylesheet' href='http://m.b3g6.com/layui/css/layui.css' media='all' />

此時(shí)idea按住ctrl鍵加鼠標(biāo)停留在文件路徑上,會(huì)有可點(diǎn)擊的提示。
但是在項(xiàng)目部署到tomcat上時(shí),war包相當(dāng)于增加了一個(gè)文件夾,文件夾名為你的war包名稱,這時(shí)按原來的引用是會(huì)提示找不到這個(gè)文件的,這時(shí)候,我們應(yīng)該這么引用:
<link rel='stylesheet' href='http://m.b3g6.com/war包名稱/layui/css/layui.css' media='all' />
當(dāng)你的引用地址含有..時(shí),比如:
<script type='text/javascript' src='http://m.b3g6.com/page/user/editUser.js'></script>
應(yīng)該這樣修改:
<script type='text/javascript' src='http://m.b3g6.com/war包名稱/backstage/page/user/editUser.js'></script>
但是問題來了,這樣配置的時(shí)候,部署到tomcat上能找到文件,但是本地idea開發(fā)啟動(dòng)tomcat調(diào)試之后,會(huì)找不到文件。這時(shí)候應(yīng)該配置application context,啟動(dòng)之后就可以了。并且做到與部署到tomcat時(shí)的文件路徑一致,不用在部署到tomcat上時(shí),還要再修改前端頁面的地址。(jsp可以不用考慮這個(gè)問題,因?yàn)閖sp能獲取根路徑)。

如果application context只是“/”的話,那么就相當(dāng)于所有的文件放在tomcat的webapp下面,直接通過localhost:8080/文件就能訪問。
到此這篇關(guān)于idea打包成war包部署到tomcat及訪問路徑問題(圖文詳解)的文章就介紹到這了,更多相關(guān)idea war包部署tomcat內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. JS實(shí)現(xiàn)前端動(dòng)態(tài)分頁碼代碼實(shí)例2. 關(guān)于IDEA 2020.3 多窗口視圖丟失的問題3. javascript實(shí)現(xiàn)貪吃蛇小練習(xí)4. js實(shí)現(xiàn)碰撞檢測5. 一文帶你徹底理解Java序列化和反序列化6. 用Spring JMS使異步消息變得簡單7. PHP驗(yàn)證碼工具-Securimage8. Python 制作查詢商品歷史價(jià)格的小工具9. Python 利用Entrez庫篩選下載PubMed文獻(xiàn)摘要的示例10. ASP.NET MVC使用jQuery ui的progressbar實(shí)現(xiàn)進(jìn)度條

網(wǎng)公網(wǎng)安備