1.jrebel插件

需要破解,下载不易

2.代码设置

使用Springboot提供的spring-boot-devtools包来完成SpringBoot应用的热部署

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

原理:SpringBoot热部署采用重启的方式,其中有两个ClassLoader,一个用来监控不变的类(jar)(basicClassLoeader)、一个是监控自己写的类(RestaterClassLoeader)是否有做修改,如果有修改则将之前的废弃掉重新加载,否则不变。

对于static以及templates下面的静态资源在热部署中不会导致服务重启(即控制台不会输出任何日志信息)。

排除资源方式:

spring.devtools.restart.exclude=static/**,templates/**

spring.devtools.restart.additional-exclude=public/**(处理默认配置排除之外的)

spring.devtools.restart.enabled=false(禁用重启策略)

除此之外还可采用triggerfile的重启策略(即只有重新编译+修改trigger.file文件内容两者同时满足时才能重启服务):

spring.devtools.restart.triggerFile=trigger.file(注意:这个文件不要放在default_exclude目录下面)


签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回