Tomcat部署項目的多種方式
Tomcat安裝目錄:${TOMCAT_HOME}
1.常規的webapps下
直接部署到${TOMCAT_HOME}/webapps下
2.利用控制台進行部署
3.外部部署
修改${TOMCAT_HOME}/conf/server.xml 在<Host>
標簽下添加web所在的目錄指定path,如:
<Context path="/xx" docBase="D:\\workspace\\xx\\target\\xx" reloadable="true" sessionCookiePath="/xx"sessionCookieName="yoursessionname"></Context>
4.${TOMCAT_HOME}/conf下建工程目錄鏡像
在conf目錄中,新建 Catalina\localhost目錄,在該目錄中新建一個xml文件,名字可以隨意取,只要和當前文件中的文件名不重復就行了,該xml文件的內容為:
<Context path="/xx" docBase="D:\\workspace\\xx\\target\\xx" debug="0" privileged="true"></Context>
IntelliJ IDEA 啟動項目分析
IntelliJ IDEA 就是使用第四種部署方式,不過還是有些區別
IDEA 啟動/停止 Tomcat 通過catalina.bat run/stop
但是在${TOMCAT_HOME}/conf下,沒有Catalina\localhost\xxxx.xml文件
在.IntelliJIdea2017.1目錄下發現有相關的配置文件
文件的修改時間與內容和啟動項目的信息吻合
說明 IDEA 啟動E盤下Tomcat的時候,加載了C盤下的項目部署配置文件
下面看看catalina.bat的內容
判斷CATALINA_HOME是否為空,如果為空就把當前位置設置為CATALINA_HOME,還有CATALINA_BASE
E:\Work\TomcatIDEA\apache-tomcat-7.0.54
既然確定IDEA是通過E:\Work\TomcatIDEA\apache-tomcat-7.0.54\bin\catalina.bat啟動的,但是此Tomcat目錄下的文件修改時間都不是IDEA 啟動的時間,說明IDEA 沒有修改Tomcat目錄
在查看控制台信息時發現
Using CATALINA_BASE: "C:\Users\xxxxx\.IntelliJIdea2017.1\system\tomcat\Unnamed_jeesite" Using CATALINA_HOME: "E:\Work\TomcatIDEA\apache-tomcat-7.0.54"
CATALINA_BASE和CATALINA_HOME區別
之前沒有仔細了解CATALINA_BASE和CATALINA_HOME區別
網上資料:
CATALINA_HOME是Tomcat的安裝目錄,CATALINA_BASE是Tomcat的工作目錄。如果我們想要運行Tomcat的 多個實例,但是不想安裝多個Tomcat軟件副本。那么我們可以配置多個工作目錄,每個運行實例獨占一個工作目錄,但是共享同一個安裝目錄 Tomcat每個運行實例需要使用自己的conf、logs、temp、webapps、work和shared目錄,因此CATALINA_BASE就 指向這些目錄。 而其他目錄主要包括了Tomcat的二進制文件和腳本,CATALINA_HOME就指向這些目錄。
IntelliJ IDEA就是利用CATALINA_BASE運行多個實例,如圖
via:http://blog.csdn.net/u013938484/article/details/69389836