1. 程式人生 > >修改Java檔案後終於不用重啟伺服器了.

修改Java檔案後終於不用重啟伺服器了.

 今天發現一個很NB的玩意,讓我們在開發的時候修改Java檔案,不用重啟伺服器立刻生效!支援Jetty tomcat jboss等很多伺服器,它就是JRebel。

      http://www.zeroturnaround.com/jrebel/installation/ 這裡有針對不同伺服器的安裝方法,基本上主流的都涵蓋了,絕大多數程式設計師都能使用!我們公司用maven/jetty對專案進行構建和開發,下面我就來說下針對maven的使用,很簡單!

      (一).下載javarebel.jar,此檔案可以放在你本機的任何目錄下,不需要放在專案中。

      (二).在pom.xml中增加一個依賴庫查詢和一個外掛的依賴庫查詢

Xml程式碼  
  1. <repositories>
  2. <repository>
  3. <id>zt-repo
    </id>
  4. <url>http://repos.zeroturnaround.com/maven2</url>
  5. </repository>
  6.                                     .......................   
  7. </repositories>
  8. <pluginRepositories>
  9. <pluginRepository>
  10. <id>zt-repo</id>
  11. <name>Zero turnaround repo</name>
  12. <url>http://repos.zeroturnaround.com/maven2
    </url>
  13. </pluginRepository>
  14.                                     .........................   
  15. </pluginRepositories>
  1. <repositories>
  2. <repository>
  3. <id>zt-repo</id>
  4. <url>http://repos.zeroturnaround.com/maven2</url>
  5. </repository>
  6.                                     .......................  
  7. </repositories>
  8. <pluginRepositories>
  9. <pluginRepository>
  10. <id>zt-repo</id>
  11. <name>Zero turnaround repo</name>
  12. <url>http://repos.zeroturnaround.com/maven2</url>
  13. </pluginRepository>
  14.                                     .........................  
  15. </pluginRepositories>

      (三).新增javarebel-maven-plugin

Xml程式碼  
  1. <plugin>
  2. <groupId>org.zeroturnaround</groupId>
  3. <artifactId>javarebel-maven-plugin</artifactId>
  4. <version>1.0.5</version>
  5. <executions>
  6. <execution>
  7. <id>generate-rebel-xml</id>
  8. <phase>process-resources</phase>
  9. <goals>
  10. <goal>generate</goal>
  11. </goals>
  12. </execution>
  13. </executions>
  14. </plugin>
  1. <plugin>
  2. <groupId>org.zeroturnaround</groupId>
  3. <artifactId>javarebel-maven-plugin</artifactId>
  4. <version>1.0.5</version>
  5. <executions>
  6. <execution>
  7. <id>generate-rebel-xml</id>
  8. <phase>process-resources</phase>
  9. <goals>
  10. <goal>generate</goal>
  11. </goals>
  12. </execution>
  13. </executions>
  14. </plugin>

   (四).修改Jetty屬性,加上<scanIntervalSeconds>0</scanIntervalSeconds> ,到這裡pom.xml就修改完了。

   (五).到專案目錄下執行mvn javarebel:generate,它會生成一個rebel.xml到你專案的target下面,不用管它,然後執行set MAVEN_OPTS=-noverify -javaagent:D:\javarebel.jar 這個jar就是一開始下載的那個jar檔案,我存在我本機D盤根目錄

   (六).大功告成,執行mvn jetty:run 啟動你的專案修改一個java檔案看看效果吧!

ps:以上這些配置只支援java檔案,若修改xml還是需要重啟的,當然JRebel也支援修改xml不重啟,但需要配置其他的地方,這個就留給大家來發掘吧!o(∩_∩)o...