1. 程式人生 > >SpringBoot(4) SpringBoot熱部署

SpringBoot(4) SpringBoot熱部署

熱部署,就是在應用正在執行的時候升級軟體,卻不需要重新啟動應用。

使用springboot結合dev-tool工具,快速載入啟動應用

官方地址:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#using-boot-devtools 核心依賴包: <dependency>   <groupId>org.springframework.boot</groupId>   <artifactId>spring-boot-devtools</artifactId>   <optional>true</optional> </dependency> 新增依賴後,在ide裡面重啟應用,後續修改後馬上可以生效。

pom檔案中修改:

 1 <dependencies>
 2     <dependency>
 3         <groupId>org.springframework.boot</groupId>
 4         <artifactId>spring-boot-starter-web</artifactId>
 5     </dependency>    
 6         
 7     <dependency>
 8         <groupId>org.springframework.boot</
groupId> 9 <artifactId>spring-boot-devtools</artifactId> 10 <optional>true</optional> 11 </dependency> 12 </dependencies> 13 14 15 <build> 16   <plugins> 17     <plugin> 18       <groupId>org.springframework.boot</groupId
> 19 <artifactId>spring-boot-maven-plugin</artifactId> 20 </plugin> 21 </plugins> 22 </build>

不被熱部署的檔案   1、/META-INF/maven, /META-INF/resources, /resources, /static, /public, or /templates   2、指定檔案不進行熱部署 spring.devtools.restart.exclude=static/**,public/**   3、手工觸發重啟(改程式碼不重啟,通過一個文字去控制) spring.devtools.restart.trigger-file=trigger.txt

在application.properties檔案中新增

#指定某些檔案不進行監聽,即不會進行熱載入
#spring.devtools.restart.exclude=application.properties

#通過觸發器,去控制什麼時候進行熱載入部署新的檔案
spring.devtools.restart.trigger-file=trigger.txt