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目录下面)
签名:这个人很懒,什么也没有留下!