使用JRebel實現SpringBoot熱部署


實現SpringBoot熱部署的方式

實際上Springboot已經提供了實現熱部署的方法了。那就是你只需要引入依賴【springboot-devtools】就可以了 。具體可以參考這篇文章springboot-devtools 熱部署

那為什么我們還需要JRebel呢?

  • 額外引入的依賴實際上生產環境並不需要,開發者引入后容易誤提交到線上。
  • springboot-devtools方式的熱部署在功能上有限制。如在方法內的修改可以實現熱部署,但是新增的方法或者修改方法參數之后熱部署是不生效的。
  • 相對於JRebel,springboot-devtools方式熱部署的速度可能有點慢

JRebel實戰

idea下安裝JRebel插件

安裝JRebel插件很簡單,只需要搜索一下就直接安裝了。


 
1.png

注意:如果不是通過在線安裝的話,一定要注意要下載最新版本的JRebel插件。不然低版本的插件很可能不支持你當前所使用的Springboot版本。

安裝好之后工具欄會多兩個圖標。


 
安裝好之后

激活JRebel插件

由於JRebel插件需要激活后才可以使用,所以安裝之后要激活。雖然JRebel插件提供了試用期,但是只有14天的時間,所以對於想快速嘗鮮的同學可以一試。不過如果你想要長期使用JRebel插件的話,那么就需要先激活才行。

激活JRebel插件我也是搜索了很長時間才搞定的。基本上網上的方法如下:

注冊一個twitter或者facebook賬號然后登陸就可以免費拿到激活碼了。

然后我自己試了一下,JRebel現在已經關閉這種方式了。


 
關閉免費激活碼

不過,黃天不負有心人啊,終於還是搜索到了。請參考這邊文章來破解 Jrebel 2018.1 激活教程

激活好之后licese是綠色的,而且試用期為180天【我是18年6月8號注冊的】。


 
激活后

使用JRebel插件

安裝還之后就可以使用下面兩種方式來run了。之后的所有修改就讀可以實現熱部署啦。


 
run with JRebel

使用JRebel插件注意點

由於JRebel是實時監控class文件的變化來實現熱部署的,所以在idea環境下需要打開自動變異功能才能實現隨時修改,隨時生效。

  1. 在設置中打開自動編譯
    如圖,在設置中打開即可。


     
    自動編譯

2.打開運行時編譯
按快捷鍵 Shift+Ctrl+Alt+/ ,選擇 Registry


 
打開運行時編譯

\

勾選如圖所示


 
8.png

JRebel官方文檔

IntelliJ IDEA
Enable automatic compilation

JRebel實戰效果

1.Run with JRebel


 
run with JRebel

2.演示修改效果

  • 方法內修改代碼
    -----------------------------------------修改之前------------------------------------------------


     
    方法內修改代碼之前1
 
方法內修改代碼之前2

-----------------------------------------修改之后------------------------------------------------


 
方法內修改代碼之后1
 
方法內修改代碼之后2
  • 增加方法
    -----------------------------------------修改之前------------------------------------------------


     
    增加方法修改之前1

     
    增加方法修改之前2

-----------------------------------------修改之后------------------------------------------------


 
增加方法修改之后1

 
增加方法修改之后2
  • 修改配置文件
    -----------------------------------------修改之前------------------------------------------------


     
    修改配置文件之前1
 
修改配置文件之前2
 
修改配置文件之前3

-----------------------------------------修改之后------------------------------------------------


 
修改配置文件之后1

 
修改配置文件之后2

可以看到JRebel基本上滿足了我們日常開發中的所有需求了。如果還有啥不滿足的話,那么我估計JRebel在最新的版本中一定會有所體現的。


原文鏈接:https://www.jianshu.com/p/bdc88bef0af2


免責聲明!

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



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