SpringBoot項目在IntelliJ IDEA中實現熱部署


實際開發過程中,經常會修改代碼重啟應用,每次手動重啟既麻煩開發效率又低,所以熱部署對於開發來說顯得十分必要,本文將介紹如何在IntelliJ IDEA(版本2018.2.5)中實現SpringBoot項目熱部署。

本文使用spring-boot-devtools實現的熱部署,按照下面兩個步驟操作完成即可。

1. 修改pom.xml

spring-boot-devtools是一個為開發者服務的一個模塊,其中最重要的功能就是熱部署。原理是在發現代碼有更改之后,重新啟動應用,但是速度比手動停止后再啟動更快。其深層原理是使用了兩個ClassLoader,一個Classloader加載那些不會改變的類(第三方Jar包),另一個ClassLoader加載會更改的類,稱為restart ClassLoader,這樣在有代碼更改的時候,原來的restart ClassLoader被丟棄,重新創建一個restart ClassLoader,由於需要加載的類相比較少,所以實現了較快的重啟時間。即devtools會監聽classpath下的文件變動,並且會立即重啟應用(發生在保存時機)

配置spring-boot-devtools后具體pom.xml文件內容如下:

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-test

test

<!-- 引入熱部署jar包 -->

org.springframework.boot

spring-boot-devtools

<!-- optional=true,依賴不會傳遞,該項目依賴devtools;之后依賴該項目的項目如果想要使用devtools,需要重新引入 -->

true

<!-- 引入熱部署依賴插件 -->

org.springframework.boot

spring-boot-maven-plugin

<!-- IntelliJ IDEA本地測試去掉fork也生效 -->

true

2. 開啟idea自動編譯及automake功能

(1). Settings --> Compile --> Build project automatically --> 勾選


 

idea設置自動編譯截圖

(2). CTRL + SHIFT + ALT + / --> 查找Registry --> 找到並勾選compiler.automake.allow.when.app.running


 

idea設置compile.automake截圖

上面兩個步驟搞定后,即可在IntelliJ IDEA中實現熱啟動,有任何問題歡迎留言溝通哦~

溫馨提示: 開啟idea自動編譯及automake功能后一定要重啟IntelliJ IDEA

下面的是我的公眾號二維碼圖片,歡迎關注,歡迎留言,一起學習,一起進步。


 

Java碎碎念公眾號


免責聲明!

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



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