SpringBoot热部署
一、什么是热部署
热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。所谓热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。
二、SpringBoot热部署工具
SpringBoot包含了额外的成套工具。把spring-boot-devtools用于项目可以提供很多的便利。
引入maven依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
devtools相关配置
spring:
devtools:
restart:
enabled: true # 热部署开关,false即不启用热部署
additional-paths: src/main/java # 指定热部署的目录
exclude: test/** # 指定目录不更新
注意:
1、生产环境devtools将被禁用,如java -jar方式或者自定义的类加载器等都会识别为生产环境。
2、打包应用默认不会包含devtools,除非你禁用SpringBoot Maven插件的excludeDevtools属性。
3、当使用模板引擎,例如thymeleaf时,无需配置spring.thymeleaf.cache: false,devtools默认会自动设置。
4、默认/META-INF/maven, /META-INF/resources, /resources, /static, /public, or /templates 里的改变不会触发应用的重启,而是触发实时重新加载。
还没有评论,来说两句吧...