idea發布web項目在tomcat位置問題


 

 

 

(1)war模式這種可以稱之為是發布模式,看名字也知道,這是先打成war包,再發布。

(2)war exploded模式是直接把文件夾、jsp頁面 、classes等等移到Tomcat 部署文件夾里面,進行加載部署。因此這種方式支持熱部署,一般在開發的時候也是用這種方式。

(3)在平時開發的時候,使用熱部署的話,應該對Tomcat進行相應的設置,這樣的話修改的jsp界面什么的東西才可以及時的顯示出來。

經過百度查資料才知道,在idea中配置的tomcat,在運行時idea不會把項目放到自己的webapps路徑下,而是在${user.home}/.IntelliJIdea/system/tomcat 目錄下。

 

<Context path="/tcc" docBase="C:\Users\SWEETGUO\IdeaProjects\workspace\out\artifacts\project2_war_exploded2" />

 

docBase是指要運行的項目的部署位置,D:\java\IDEAWorkSpace\項目 就是項目源代碼的位置,target是由maven構建后生成的.

運行過程:

首先Intellij會為每個web項目建立一個單獨的文件夾,以“Unnamed_項目名”命名(可在.idea/workspace.xml中修改)。

在每次啟動項目時,它先將tomcat目錄下原始的CATALINA_BASE目錄拷貝一份到該目錄下,也就是將當前tomcat的配置文件拷貝到“Unnamed_項目名”文件夾下。

然后將CATALINA_BASE的路徑修改為該目錄的路徑,再在 Unnamed_項目名/conf/Catalina/localhost下添加項目的配置文件ROOT.xml。

最后啟動tomcat,tomcat除了會啟動webapps下應用外還會加載/conf/Catalina/localhost下配置的應用,而Intellij就是通過這種方式“隱蔽”地加載web項目。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM