如何讓Tomcat熱部署——告別煩人的重啟
阿新 • • 發佈:2018-11-10
如何讓Tomcat只替換幾個class檔案就可以直接更新專案了,當然要介紹一下tomcat的開發模式了。
Tomcat先要設定為開發模式
替換class檔案重新載入專案時就不用重啟tomcat了
設定開發模式步驟如下:
1、在tomcat的conf目錄下的web.xml新增:
<servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>development</param-name> <param-value>true</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet>
<init-param>
<param-name>development</param-name>
<param-value>true</param-value>
</init-param>
2、編輯Tomcat的server.xml
在Host節點內加入
<Context path="/myapp" docBase="myapp" debug="99" reloadable="true" />
其中,"myapp" 為要部署的應用程式,通常在webapps目錄下
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="/myapp" docBase="myapp" debug="99" reloadable="true" /> </Host>
3、重啟tomcat,步驟如下:
3.1、首先,進入Tomcat下的bin目錄
cd /usr/local/tomcat/bin
3.2、使用Tomcat關閉命令
./shutdown.sh
3.3、檢視Tomcat是否以關閉
ps -ef|grep java
如果顯示以下相似資訊,說明Tomcat還沒有關閉
root 7010 1 0 Apr19 ? 00:30:13 /usr/local/java/bin/java
-Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m
-XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m
-XX:+DisableExplicitGC -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar
-Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat
-Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
3.4、如果你想直接直接殺死Tomcat程序(程序號: 7010),可以使用kill命令
kill -9 7010
3.5、然後繼續檢視Tomcat是否關閉
ps -ef|grep java
如果出現以下資訊,則表示Tomcat已經關閉
root 7010 1 0 Apr19 ? 00:30:30 [java] <defunct>
3.6、最後,啟動Tomcat
./startup.sh