👉 這是一個或許對你有用的社群
《專案實戰(影片)》:從書中學,往事上“練” 《網際網路高頻面試題》:面朝簡歷學習,春暖花開 《架構 x 系統設計》:摧枯拉朽,掌控面試高頻場景題 《精進 Java 學習指南》:系統學習,網際網路主流技術棧 《必讀 Java 原始碼專欄》:知其然,知其所以然

👉這是一個或許對你有用的開源專案國產 Star 破 10w+ 的開源專案,前端包括管理後臺 + 微信小程式,後端支援單體和微服務架構。功能涵蓋 RBAC 許可權、SaaS 多租戶、資料許可權、商城、支付、工作流、大屏報表、微信公眾號、ERP、CRM、AI 大模型等等功能:
Boot 多模組架構:https://gitee.com/zhijiantianya/ruoyi-vue-pro Cloud 微服務架構:https://gitee.com/zhijiantianya/yudao-cloud 影片教程:https://doc.iocoder.cn 【國內首批】支援 JDK 17/21 + SpringBoot 3.3、JDK 8/11 + Spring Boot 2.7 雙版本
前言
一般我們的專案都會引各種依賴和配置項,專案的啟動往往比較耗時。可能 debug 的過程中發現需要修改的地方,改了之後如果每次都重啟服務會耗費大量時間,減少摸魚時間。熱部署就是為了解決每次服務都要重啟的問題,提升我們工作效率。
常用的熱部署方式有3種:
-
SpringBoot Configuration方式; -
spring-boot-devtool; -
JRebel。
一起來看下怎麼用
基於 Spring Boot + MyBatis Plus + Vue & Element 實現的後臺管理系統 + 使用者小程式,支援 RBAC 動態許可權、多租戶、資料許可權、工作流、三方登入、支付、簡訊、商城等功能
專案地址:https://github.com/YunaiV/ruoyi-vue-pro 影片教程:https://doc.iocoder.cn/video/
SpringBoot Configuraion
這是 Idea 給我們提供的熱部署方式。
IDEA 官方介紹:
https://www.jetbrains.com/help/idea/updating-applications-on-application-servers.html
我們在工具欄上點開專案,選擇
Edit Configuration
,彈出下面的介面:
可以看到在
Running Application Update Policies
下有兩個選項:-
On 'Update' action: 當你選擇這個選項時,自動編譯和更新操作只有在你顯式執行 "Update" 操作時才會觸發。顯式執行"Update"操作就是透過手動點選【 Build Project
】時觸發。這種方式可以使你完全控制編譯和更新的時機,避免頻繁的自動更新。(快捷鍵:Ctrl + F10) -
On frame deactivation: 當你選擇這個時,每當 IntelliJ IDEA 的視窗失去焦點(即你切換到其他應用程式)時,IDE 會自動編譯並更新執行中的應用程式。它適合那些需要頻繁編譯和更新的開發場景。
當兩個都選了時,會使用第二種策略,即失去焦點時自動更新。一般大型專案建議使用第一個選項,否則頻繁地自動更新會耗費較多資源。
當我們選擇
On 'Update' action
時,有幾種方式可供選擇(不同版本可能展示的有差異),不同選項的作用見 Idea 的備註:
一般選擇
Update classes and resources
,它會編譯所有修改的類檔案和資原始檔。基於 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實現的後臺管理系統 + 使用者小程式,支援 RBAC 動態許可權、多租戶、資料許可權、工作流、三方登入、支付、簡訊、商城等功能
專案地址:https://github.com/YunaiV/yudao-cloud 影片教程:https://doc.iocoder.cn/video/
spring-dev-tools
這個工具是依賴 Liveload 伺服器實現的,使用了兩個類載入器
ClassLoader
,一個ClassLoader
載入不會發生更改的類(第三方jar包),另一個ClassLoader(restart ClassLoader)
載入會更改的類(自定義的類)。使用方式很簡單,pom檔案中引入依賴即可:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>
true
</optional> <!-- 可以防止將devtools依賴傳遞到其他模組中 -->
</dependency>
然後也是手動點選【
Build Project
】即可觸發熱部署。當然也可以配置 Idea 的自動更新。JRebel
JRebel是一個 JVM 外掛,在 Idea 中可以直接安裝,下面是官網的介紹:
JRebel is a JVM plugin that streamlines Java application development by skipping the time-consuming build and redeploy steps. With JRebel, developers can view code changes in real time, preserve application state, and increase coding efficiency.
-
外掛安裝 直接搜 JRebel and XRebel 安裝即可。 -
啟用,這個網上搜下。 -
設定增量編譯:

-
double shift,輸入 register:

使用JRebel啟動專案。
歡迎加入我的知識星球,全面提升技術能力。
👉 加入方式,“長按”或“掃描”下方二維碼噢:

星球的內容包括:專案實戰、面試招聘、原始碼解析、學習路線。





文章有幫助的話,在看,轉發吧。
謝謝支援喲 (*^__^*)