Spring Boot热部署

1.DevTools

引入devtools

<!-- 热部署-->
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-devtools</artifactId>
          <optional>true</optional>
      </dependency>

DevTools会自动默认模板引擎的缓存为关闭状态
当类文件发生变化时,DevTools会监测到,并自动重启,比冷重启要快很多(使用IDEA时要build一下,eclipse配置auto build)

关闭热部署日志:spring.devtools.restart.log-condition-evaluation-delta=false
监控文件定制设置:
spring.devtools.restart.additionalpaths=custom/(额外监测文件)
spring.devtools.restart.exclude=static/
(不监测文件)

热部署触发时机:spring.devtools.restart.trigger-file=fileName ,只有当此文件发生变化时触发

devTools有两个类加载器,reload和base,reload里的类才会被热部署,jar默认都会在base加载器中加载,在多模块的工程中需要定制哪些jar加载,哪些不用
建文件META-INF/spring-devtools.properties,支持正则
restart.exclude.companycommonlibs=/mycorp-common-[\w-]+.jar(base加载)
restart.include.projectcommon=/mycorp-myproj-[\w-]+.jar(reload加载)

2.Jrebel
https://zeroturnaround.com/software/jrebel/

转自:https://docs.spring.io/spring-boot/docs/2.0.6.RELEASE/reference/pdf/spring-boot-reference.pdf

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容