Spring Boot熱部署加持

Ultrafine 5K

概述

進(jìn)行SpringBoot的Web開發(fā)過程中,我們很多時(shí)候經(jīng)常需要重啟Web服務(wù)器才能保證修改的 源代碼文件、或者一些諸如xml的配置文件、以及一些靜態(tài)文件生效,這樣耗時(shí)又低效。所謂的熱部署指的是我們不需要重啟Web Server就可以保證各項(xiàng)文件修改的立即生效。下面便來介紹一下在IDEA中進(jìn)行SpringBoot的Web開發(fā)時(shí)如何加入熱部署的支持。

這里我們是使用 spring-boot-devtools 來幫助完成這個(gè)事情,其是一個(gè)為開發(fā)者服務(wù)的模塊,可以實(shí)現(xiàn)SpringBoot熱部署。其機(jī)理就是 spring-boot-devtools 會(huì)監(jiān)聽classpath下的文件變動(dòng),變動(dòng)保存生效,其就會(huì)立即重啟應(yīng)用。

注: 本文原載于 My Personal Blog:, CodeSheep · 程序羊 !



pom.xml中添加依賴

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
        </dependency>


設(shè)置IDEA環(huán)境自動(dòng)編譯

首先在編譯器選項(xiàng)中選中自動(dòng)編譯工程的選項(xiàng),如下圖所示,

設(shè)置IDEA自動(dòng)編譯

接下來我們利用快捷鍵:Command + Shift + Alt + / 來調(diào)出Registry窗口,然后勾選其中的編譯器自動(dòng)編譯選項(xiàng),如下圖所示:

設(shè)置IDEA自動(dòng)編譯


啟動(dòng)項(xiàng)目并實(shí)驗(yàn)

上面幾個(gè)步驟設(shè)置完成以后,我們?nèi)ロ?xiàng)目的根目錄下執(zhí)行命令來啟動(dòng)SpringBoot應(yīng)用:

mvn clean spring-boot:run

此時(shí)的效果是只要我們修改了編輯區(qū)的源代碼,保存之后,應(yīng)用程序便會(huì)自動(dòng)重啟讓修改生效。



監(jiān)聽文件夾的變化

上面我們是修改源代碼時(shí)的自動(dòng)熱啟動(dòng),除此之外,我們還可以設(shè)置 spring-boot-devtools 來監(jiān)聽某個(gè)文件夾的變化,比如我們想監(jiān)聽某個(gè)靜態(tài)文件夾下文件的變化(如html文件),當(dāng)其下面的文件改變的時(shí)候能夠重新啟動(dòng)SpringBoot,那么我們只要在配置文件 application.properties 中添加如下配置即可:

spring.devtools.restart.additional-paths = src/main/resources/templates 

隨后再次實(shí)驗(yàn),取得的效果和之前一樣,熱啟動(dòng)便生效了



后記

由于能力有限,若有錯(cuò)誤或者不當(dāng)之處,還請大家批評(píng)指正,一起學(xué)習(xí)交流!



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

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

  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,272評(píng)論 6 342
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評(píng)論 19 139
  • 入門 介紹 Spring Boot Spring Boot 使您可以輕松地創(chuàng)建獨(dú)立的、生產(chǎn)級(jí)的基于 Spring ...
    Hsinwong閱讀 17,094評(píng)論 2 89
  • 前言:學(xué)習(xí)SpringBoot不應(yīng)該直接就是開始使用SpringBoot,如果直接拿來用肯定會(huì)有很多人不是很明白特...
    CoderZS閱讀 75,069評(píng)論 10 217
  • 此篇翻譯的是Spring Boot官方指南 Part III. 使用 Spring Boot (Using Spr...
    K天道酬勤閱讀 6,947評(píng)論 0 21

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