Tomcat熱啟動


===== 2017.7.1 =====

如果是對原來的類方法修改,那么熱啟動非常好用;如果是添加了新的類或方法(非最上層的controller),那么此方法也是好用的;但是如果是在controller上添加了新的接口,就不好用了,必須重啟Tomcat;

==================

項目在開發階段經常會修改后台Java代碼,但是每次make project后都需要重啟Tomcat才能是代碼生效。

解決辦法是修改Tomcat的conf目錄下server.xml的配置文件,使reloadable=true,這樣每次修改n個java文件,make的時候把這些class文件到Tomcat監聽目錄下,會自動提示有n個class reloaded。

以下是server.xml的修改:

<Context path="C:\Users\jonney\Desktop\wms\out\artifacts\wms_Web_exploded" debug="1" reloadable="true"/>

完全host節點:

 1       <Host name="localhost"  appBase="webapps"
 2             unpackWARs="true" autoDeploy="true">
 3 
 4         <Context path="C:\Users\jonney\Desktop\wms\out\artifacts\wms_Web_exploded" debug="1" reloadable="true"/>
 5         
 6         <!-- SingleSignOn valve, share authentication between web applications
 7              Documentation at: /docs/config/valve.html -->
 8         <!--
 9         <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
10         -->
11 
12         <!-- Access log processes all example.
13              Documentation at: /docs/config/valve.html
14              Note: The pattern used is equivalent to using pattern="common" -->
15         <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
16                prefix="localhost_access_log." suffix=".txt"
17                pattern="%h %l %u %t &quot;%r&quot; %s %b" />
18 
19       </Host>

 經測試有效,使用的Tomcat7.0,但是對於新添加的class不起作用,只有對已經存在的Java類修改了,會立馬reload。


免責聲明!

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



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