javascript
SpringBoot热部署加持
概述
進(jìn)行SpringBoot的Web開(kāi)發(fā)過(guò)程中,我們很多時(shí)候經(jīng)常需要重啟Web服務(wù)器才能保證修改的 源代碼文件、或者一些諸如xml的配置文件、以及一些靜態(tài)文件生效,這樣耗時(shí)又低效。所謂的熱部署指的是我們不需要重啟Web Server就可以保證各項(xiàng)文件修改的立即生效。下面便來(lái)介紹一下在IDEA中進(jìn)行SpringBoot的Web開(kāi)發(fā)時(shí)如何加入熱部署的支持。
這里我們是使用 spring-boot-devtools 來(lái)幫助完成這個(gè)事情,其是一個(gè)為開(kāi)發(fā)者服務(wù)的模塊,可以實(shí)現(xiàn)SpringBoot熱部署。其機(jī)理就是 spring-boot-devtools 會(huì)監(jiān)聽(tīng)classpath下的文件變動(dòng),變動(dòng)保存生效,其就會(huì)立即重啟應(yīng)用。
注: 本文首發(fā)于 My 公眾號(hào) CodeSheep ,可 長(zhǎng)按 或 掃描 下面的 小心心 來(lái)訂閱 ↓ ↓ ↓
pom.xml中添加依賴
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope></dependency> 復(fù)制代碼設(shè)置IDEA環(huán)境自動(dòng)編譯
首先在編譯器選項(xiàng)中選中自動(dòng)編譯工程的選項(xiàng),如下圖所示,
接下來(lái)我們利用快捷鍵:Command + Shift + Alt + / 來(lái)調(diào)出Registry窗口,然后勾選其中的編譯器自動(dòng)編譯選項(xiàng),如下圖所示:
啟動(dòng)項(xiàng)目并實(shí)驗(yàn)
上面幾個(gè)步驟設(shè)置完成以后,我們?nèi)ロ?xiàng)目的根目錄下執(zhí)行命令來(lái)啟動(dòng)SpringBoot應(yīng)用:
mvn clean spring-boot:run 復(fù)制代碼此時(shí)的效果是只要我們修改了編輯區(qū)的源代碼,保存之后,應(yīng)用程序便會(huì)自動(dòng)重啟讓修改生效。
監(jiān)聽(tīng)文件夾的變化
上面我們是修改源代碼時(shí)的自動(dòng)熱啟動(dòng),除此之外,我們還可以設(shè)置 spring-boot-devtools 來(lái)監(jiān)聽(tīng)某個(gè)文件夾的變化,比如我們想監(jiān)聽(tīng)某個(gè)靜態(tài)文件夾下文件的變化(如html文件),當(dāng)其下面的文件改變的時(shí)候能夠重新啟動(dòng)SpringBoot,那么我們只要在配置文件 application.properties 中添加如下配置即可:
spring.devtools.restart.additional-paths = src/main/resources/templates 復(fù)制代碼隨后再次實(shí)驗(yàn),取得的效果和之前一樣,熱啟動(dòng)便生效了
后記
-
作者更多的原創(chuàng)文章在此,歡迎觀賞
-
My Personal Blog
作者更多的SpringBt實(shí)踐文章在此:
- Spring Boot應(yīng)用監(jiān)控實(shí)戰(zhàn)
- SpringBoot應(yīng)用部署于外置Tomcat容器
- ElasticSearch搜索引擎在SpringBt中的實(shí)踐
- 初探Kotlin+SpringBoot聯(lián)合編程
- Spring Boot日志框架實(shí)踐
- SpringBoot優(yōu)雅編碼之:Lombok加持
如果有興趣,也可以抽點(diǎn)時(shí)間看看作者一些關(guān)于容器化、微服務(wù)化方面的文章:
- 利用K8S技術(shù)棧打造個(gè)人私有云 連載文章
- 從一份配置清單詳解Nginx服務(wù)器配置
- Docker容器可視化監(jiān)控中心搭建
- 利用ELK搭建Docker容器化應(yīng)用日志中心
- RPC框架實(shí)踐之:Apache Thrift
- RPC框架實(shí)踐之:Google gRPC
- 微服務(wù)調(diào)用鏈追蹤中心搭建
- Docker容器跨主機(jī)通信
- Docker Swarm集群初探
- 高效編寫Dockerfile的幾條準(zhǔn)則
總結(jié)
以上是生活随笔為你收集整理的SpringBoot热部署加持的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: php代码function,ThinkP
- 下一篇: (三)SpringBoot之配置文件详解