溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javaweb開發提高效率利器JRebel的示例分析

發布時間:2021-04-19 10:54:39 來源:億速云 閱讀:250 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關javaweb開發提高效率利器JRebel的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

一、JRebel簡介

jrebel是國外公司perforce于2007年開發的一款java開發效率工具,旨在幫助java開發人員更快地編寫更好的應用程序。jrebel提供了常用的開發IDE如IntelliJ Idea、eclipse、myEclipse、NetBeans等的jrebel插件,可以很方便的在IDE中使用JRebel進行代碼的熱加載,提高開發效率。

jrebel可以幫助我們解決哪些問題?

1、每次修改完java代碼后,都要重啟項目來讓java代碼生效,等待很長時間

2、每次重啟項目電腦CPU都打滿,電腦吃不消

二、JRebel安裝和激活

這里介紹idea中jRebel插件的安裝和激活。

安裝

打開idea插件瀏覽器:File-》settings-》plugins-》Browse repositories,搜索jrebel,安裝這個【Jrebel and XRebel for IntelliJ】插件,重啟。重啟完后idea右側會有個Jrebel使用向導,愛看不看。

安裝完后的設置

1、打開idea的自動編譯功能:settings-》build-》compiler-》Build project automatically

javaweb開發提高效率利器JRebel的示例分析

2、打開idea的【當應用運行期間可以自動編譯的功能】

方式一:ctrl+shift+alt+/  選擇Registry

方式二:ctrl+shift+A 搜索registry,或help-》find action,搜索Registry

javaweb開發提高效率利器JRebel的示例分析

激活

激活方式:填寫jrebel的激活url和個人郵箱即可。步驟:settings-》JRebel-》點擊 Change license,填寫完后點擊下面的 Change license 按鈕。

方式一:激活url獲?。褐苯犹顚憉rl即可:https://jrebel.qekang.com/ + UUID,如 https://jrebel.qekang.com/27166483-4ca3-47d9-bc40-dd032ee52aba,UUID可自己生成,也可在線生成連接 https://www.guidgen.com/,一個JRebel license 網站 https://jrebel.qekang.com/

方式二:參考http://www.dadijd.cn/article/189496.htm

javaweb開發提高效率利器JRebel的示例分析

最后別忘了點擊 work offline,以離線模式運行。

若是JRebel過期了,就按照上面的步驟,再次激活就好了。

三、JRebel使用

1、項目初次使用,需要先生成rebel.xml文件

JRebel安裝完成后,idea左側出現JRebel的工具窗口,如下圖所示:

javaweb開發提高效率利器JRebel的示例分析

對要進行熱加載的項目,后面打上勾,就會發現項目中多了個 rebel.xml 文件,這是JRebel的配置文件,里面會自動配置JRebel要監控的文件目錄。

如果是jar文件,如springBoot項目, rebel.xml 則出現在項目根文件夾中。如果是war文件,如SSM項目,rebel.xml將出現在WEB-INF / classes文件夾中。2、以JRebel方式啟動

javaweb開發提高效率利器JRebel的示例分析

3、修改java代碼測試熱加載

以JRebel方式啟動后,修改java代碼,等上兩三秒,注意看控制臺,當出現 JRebel: Reloading class xxx 字樣的時候,說明JRebel熱加載完成,就可以查看修改后的效果了。

如果嫌JRebel的自動熱加載慢,可以ctrl+F9(Build Project)一下,就能立馬熱加載成功。趕緊動手試試吧!

四、 JRebel的熱加載原理

              jrebel是一個基于JVM類加載機制的插件,能自動重新加載修改后的java字節碼文件。因為我們在IDEA中開啟了自動編譯功能,所以當java文件發生改動時,會被自動編譯成字節碼文件,此時jrebel監聽到字節碼文件發生了改變,就自動的把改動的字節碼文件加載進JVM中,所以我們幾乎可以實時的看到修改后的效果。因為只是重新加載改動的文件,不用重啟整個項目,所以效率上要遠高于devtools,對于配置文件或xml文件中的修改還是要重啟才行。

熱加載和熱部署的區別:

熱加載:在項目運行狀態下,重新加載修改后的資源(用于日常開發),內存不會被清空,session也有效,但內存消耗較大。

熱部署:在項目運行狀態下,自動重啟部署整個項目(用于項目部署),但會將內存清空,session也將失效。

五、其他熱加載的方式

1、springBoot環境下,可用devTools,但不如JRebel好。

2、以debug模式啟動項目,每次修改完重新ctrl+F9編譯一下,有時候也有效。

感謝各位的閱讀!關于“javaweb開發提高效率利器JRebel的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女