springboot熱部署(修改后不用重啟服務(wù)器)

之前每次修改東西后都要重新啟動(dòng)服務(wù)器,正好看到了熱部署,發(fā)現(xiàn)特別好用,記錄一下使用方法,方便自己以后萬一忘記時(shí)用作參考。

首先在idea的File-settings里找到Compiler把Build project automatically(自動(dòng)編譯)打上勾。

自動(dòng)編譯

但只打開自動(dòng)編譯,運(yùn)行時(shí)時(shí)不生效的。所以要按 ctrl+shift+alt+/ 選擇registry,找到下圖選項(xiàng)并打上勾才能在運(yùn)行時(shí)自動(dòng)編譯。

允許運(yùn)行時(shí)自動(dòng)編譯

在pom.xml文件中添devtools依賴。

devtools實(shí)現(xiàn)對(duì)class文件變化的監(jiān)聽,以及頁面的熱部署。

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <version>2.2.2.RELEASE</version>
        </dependency>

在application.properties配置文件關(guān)閉緩存,使頁面能夠?qū)崟r(shí)刷新

#關(guān)閉緩存功能
spring.thymeleaf.cache=false

這樣熱部署就可以使用了。

熱部署在檢測(cè)到class類有改變時(shí)會(huì)自動(dòng)重啟,但是和手動(dòng)重啟不同的是它通過兩個(gè)類加載器進(jìn)行文件的加載。一個(gè)加載著不會(huì)改動(dòng)的第三方的依賴包,另一個(gè)加載自己開發(fā)環(huán)境下可能會(huì)進(jìn)行改動(dòng)的內(nèi)容。重啟時(shí)只丟棄加載本地內(nèi)容的加載器并重新創(chuàng)建加載本地內(nèi)容。從而大大減少了重啟所需的時(shí)間。

參考: https://cloud.tencent.com/developer/article/1333953
個(gè)人博客:https://www.rainc.top/2020/01/11/essay/springboot-hotdev

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容