IDEA web項(xiàng)目部署位置(tomcat)

在IDEA中用JRebel直接將項(xiàng)目運(yùn)行到tomcat中,部署完成之后,項(xiàng)目可以正常訪問了。但是,上傳圖片卻一直不成功(找不到原來(lái)的文件夾了),原來(lái)是直接寫的絕對(duì)路徑到tomcat下。

這里我們直接部署war exploded 而不是war包。
war exploded模式是直接把文件夾、jsp頁(yè)面 、classes等等移到Tomcat 部署文件夾里面,進(jìn)行加載部署。因此這種方式支持熱部署,一般在開發(fā)的時(shí)候也是用這種方式。

到tomcat目錄的webapps目錄下去找,卻沒有發(fā)現(xiàn)自己的項(xiàng)目。
在tomcat的conf目錄下,也沒有發(fā)現(xiàn)Catalina/localhost/xxxx.xml配置文件
(IDEA 啟動(dòng)/停止 Tomcat 通過(guò)catalina.bat run/stop)

后來(lái),在IDEA中啟動(dòng)項(xiàng)目的時(shí)候發(fā)現(xiàn)了一條信息:

28-Jul-2017 14:10:43.432 信息 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/Users/archerlj/Library/Caches/IntelliJIdea2017.1/tomcat/Unnamed_xibu_5

到上面對(duì)應(yīng)的項(xiàng)目目錄下(Unnamed_xibu_5),發(fā)現(xiàn)了三個(gè)文件夾:

屏幕快照 2017-07-28 下午2.12.04.png

原來(lái)在IDEA中部署項(xiàng)目到tomcat時(shí),并沒有把項(xiàng)目部署到webapps下,而是IDEA自己給每一個(gè)項(xiàng)目生成了一個(gè)對(duì)應(yīng)的文件夾,并且生成了三個(gè)對(duì)應(yīng)的文件夾,這三個(gè)文件夾中就包含了tomcat的配置和項(xiàng)目的部署位置。IDEA啟動(dòng)了我們的tomcat,但是卻是使用的上面三個(gè)文件夾中的項(xiàng)目部署配置文件。

直接打開conf/Catalina/localhost/ROOT.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<Context path="" docBase="/Users/archerlj/Desktop/myProjects/xibugangwan/target/xibu-0.0.1-SNAPSHOT" />

這里的path是指我們?cè)L問web項(xiàng)目的時(shí)候是否需要添加額外的路徑,比如直接使用

http://localhost:8080/

還是

http://localhost:8080/xibu

這里的額外路徑和IDEA中的下面的配置是對(duì)應(yīng)的:

Group.png

而docBase就是我們的項(xiàng)目的部署位置。
接下來(lái)可以直接把上傳的圖片存放到/Users/archerlj/Desktop/myProjects/xibugangwan/target/xibu-0.0.1-SNAPSHOT下面即可。

另外

可以添加部署war包,然后更改額外訪問路徑,即可在webapps中生成對(duì)應(yīng)的項(xiàng)目:

Group.png

這里必須指定一個(gè)額外的訪問路徑,如果是單獨(dú)一個(gè)"/",也是不會(huì)部署到webapps下面的。當(dāng)然,直接部署war包的話就不支持熱部署了。


最后幫朋友打個(gè)小廣告

一個(gè)有趣的迷你小程序

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容