1. 程式人生 > >Java web熱部署 (Javarebel實現真正高效的tomcat熱部署)

Java web熱部署 (Javarebel實現真正高效的tomcat熱部署)

在進行java web程式開發過程中,經常遇到這種問題,修改一個java檔案(*.java),需要重啟web伺服器(如tomcat,weblogic等),部署專案。而起/停伺服器浪費了大量的時間。在小專案中,也許我們感覺不到。但對於公司的大型專案:如資料中心,生產等系統開發而言,往往起/停需要等待幾分鐘時間。更浪費時間的是,對於一個類中的方法的除錯過程,如果修改多次,需要反覆的啟停伺服器,那麼浪費的時間更多。從上可以看出,我們急需一個可快速起/停伺服器的工具,來提高我們的開發效率。

1       Javarebel簡介

JavaRebel是一個JVM外掛(-javaagent),能夠即時過載java class更改,因此不需要重新部署一個應用或者重啟容器,節約開發者時間。它是一個

Java EE和Java 獨立應用的常用解決方案。

JavaRebel可以和MyEclipse,tomcat等快速的組裝在一起,用語動態部署java檔案而不用重啟伺服器,從而可解決大量的開發時間,提高開發效率。

2       JavaRebel使用介紹

下面以javarebel + MyEclipse,javarebel+tomcat為例,介紹javarebel的在專案開發,部署環境的搭建即使用。

  • Javarebel和MyEclipse開發部署應用

2:安裝myeclipse(安裝步驟略),個人使用版本myeclispe5.5.

3:在myeclipse中新增javarebel:開啟MyeEclispe->Window->Prefrence視窗,找到設定tomcat位置下JDK設定。如圖:

在java VM引數中增加如下程式碼:

-noverify-javaagent:d:\javarebel-2.0\javarebel.jar

然後點選“OK”按鈕即可。

下面看看javarebel在開發過程中的應用(假設myeclipse中設定的tomcat部署檔案{tomcat}\conf\Catalina\localhost\<檔名>.xml 中連結的專案已在myeclipse中匯入):

       啟動tomcat完畢後,修改java類檔案。然後直接執行程式(不用重啟伺服器)。在myeclipe控制檯會列印下圖紅色筆記部分資訊,此為javarebel自動列印,告訴你被修改的類部署的部署情況。