<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    bjtdeyx

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      1 隨筆 :: 1 文章 :: 3 評論 :: 0 Trackbacks

    可以修改類不用重啟Tomcat加載整個項目(手工啟動) 
        配置reloadable=true(自動重載) 
        使用Debug模式,前提是僅限于局部修改。(修改類不用重啟--熱加載) 

        Tomcat輕小,而WebLogic、WebSphere對硬件要求比較高,吃內存、耗CUP。JBoss類更改不會重啟(傳說,我沒用過,不知道!)。 

        在使用Eclipse+Tomcat開發Java項目的時候常常會碰到這樣的情況,已修改Java文件Tomcat就會自動重啟,接下來就是漫長的等待服務重啟完畢。那其實大多數的Java文件修改是沒有必要重啟服務的,只有一些特定的Java文件,比如說只有重啟服務的時候才會調用的Java代碼才需要重啟服務。 

        一修改java代碼就重新部署(console有明顯提示),且會話失效,設置服務器為debug模式(debug on server),否則修改不起作用. 

        什么時候應該redeploy,什么時候應該重啟tomcat。如果項目大,redeploy和重啟tomcat的系統開銷是很大的,經常要等很長時間。 

        Tomcat運行時動態重載類, 實現重載功能的測試jsp。當系統中有很多類時,如果開啟了Tomcat的reloadable=true,那么每當相關文件改變時,Tomcat會停止 web app并釋放內存,然后重新加載web app.這實在是個耗時的工程. 如果能有只重載某幾個類的功能,將極大的滿足我這個即時調試狂。 

    1.修改類不重啟Tomcat(不用手動重啟) 
        首先需要設置server.xml中的Context reloadable="true", true自動重載(不是重啟!), false手動重載。(如果項目在Tomcat中,應該去Tomcat目錄設置。) 
        Eclipse EE 設置方式,文件設置:server.xml > reloadable="false" 界面設置:Server > Modules > Edit > webapp > Auto reloading enabled > false 
        開發階段通常都設為true,方便開發,在發布階段應該設置為false,提高應用程序的訪問速度??梢赃x擇把其他不相關的項目先從webapps移出,這樣tomcat加載的項目就少了,相應也就快了。


    這里是重點:修改tomcat  conf目錄下的server.xml,添加:

    Xml代碼   
    1. <Context path="/struts2" docBase="D:\workspace\lee_struts2\WebRoot" reloadable="true"/>  

        注:docBase="",中的內容為項目的WebRoot目錄

     然后在把MyEclipse server中 tomcat 的開發模式設置debug模式,ok確定。

     然后啟動tomcat,隨意修改項目中的一個文件,就會看到Console窗口重新加載項目,ok,搞定...

    (問題:設置debug模式修改代碼后會出現“hot code replace failed”錯誤,不用管,繼續就ok,如果不想看見,讓錯誤不提示就ok,原因是debug模式代碼正在用,所以replase失敗,但其實是成功的!而設置run模式就不報錯,同時在修改代碼后也是熱部署的,刷新頁面即可!)

     

    2.修改類不重啟Tomcat有兩種方式:熱部署、熱加載 
        熱部署:容器狀態在運行時重新部署整個項目。這種情況下一般整個內存會清空,重新加載,這種方式可能會造成sessin丟失等情況。tomcat 6確實可以熱部署了,而且會話也沒丟. 
        熱加載:最好是在調試過程中使用,免得整個項目加載,Debug模式支持熱加載。容器狀態在運行時重新加載改變編譯后的類。在這種情況下內存不會清空,sessin不會丟失,但容易造成內存溢出,或者找不到方法。 

        一般改變類的結構和模型就會有異常,在已經有的變量和方法中改變是不會出問題的(Eclipse、MyEclipse8、JBuilder、 IntelliJ IDEA…)。 

    3.自動編譯JSP 
    build Automatically 

    修改Tomcat源代碼實現realoadable!不推薦~

    posted on 2012-02-22 11:32 心碎逍遙 閱讀(18152) 評論(1)  編輯  收藏

    評論

    # re: 修改類不重啟tomcat 自動加載項目 2013-10-09 16:47 sfds
    gfd  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 免费在线观看污网站| 国产成人人综合亚洲欧美丁香花| 日本一线a视频免费观看| 国产在线精品一区免费香蕉| 99视频在线精品免费| 羞羞网站免费观看| 亚洲日本人成中文字幕| 亚洲成a人片在线观看日本| 免费在线观看视频a| 成人毛片免费观看视频在线| 69pao强力打造免费高清| 久久国产精品免费一区二区三区| 亚洲综合av一区二区三区不卡| 亚洲视频在线观看视频| 亚洲精品~无码抽插| 中文字幕亚洲不卡在线亚瑟| 国产精品深夜福利免费观看 | 国产亚洲精品免费| 一个人免费观看视频www| 最近2022中文字幕免费视频| 日本高清不卡aⅴ免费网站| 日韩少妇内射免费播放| 国产成人高清亚洲一区91| 亚洲人成网站在线在线观看| 国产午夜亚洲精品国产| 亚洲人成77777在线观看网| 亚洲人成网站日本片| 亚洲毛片无码专区亚洲乱| 亚洲一区二区三区首页| 亚洲AV综合色一区二区三区| 亚洲一区二区三区自拍公司| 国产亚洲欧洲Aⅴ综合一区| 中文字幕无码精品亚洲资源网| 亚洲精品国产福利一二区| 亚洲国产一区二区视频网站| 亚洲国产天堂久久综合| 亚洲毛片网址在线观看中文字幕| heyzo亚洲精品日韩| 久久影院亚洲一区| 久久亚洲免费视频| 亚洲资源在线视频|