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目錄下,再啟動tomcat就能訪問項(xiàng)目了。
項(xiàng)目的訪問地址是localhost:8080/你的war包名稱/index
在這里想說一下的是由于war包的名稱決定了訪問地址,所以當(dāng)采用純html+css+js寫頁面時(shí),在頁面的資源引用地址最好加上你的項(xiàng)目名稱(即你的最終war包命名),例如引用js文件:
<link rel="stylesheet" href="/layui/css/layui.css" media="all" />
此時(shí)idea按住ctrl鍵加鼠標(biāo)停留在文件路徑上,會有可點(diǎn)擊的提示。
但是在項(xiàng)目部署到tomcat上時(shí),war包相當(dāng)于增加了一個(gè)文件夾,文件夾名為你的war包名稱,這時(shí)按原來的引用是會提示找不到這個(gè)文件的,這時(shí)候,我們應(yīng)該這么引用:
<link rel="stylesheet" href="/war包名稱/layui/css/layui.css" media="all" />
當(dāng)你的引用地址含有..時(shí),比如:
<script type="text/javascript" src="../../page/user/editUser.js"></script>
應(yīng)該這樣修改:
<script type="text/javascript" src="../../war包名稱/backstage/page/user/editUser.js"></script>
但是問題來了,這樣配置的時(shí)候,部署到tomcat上能找到文件,但是本地idea開發(fā)啟動tomcat調(diào)試之后,會找不到文件。這時(shí)候應(yīng)該配置application context,啟動之后就可以了。并且做到與部署到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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!