引入
Spring Boot为我们提供了spring-boot-devtools这个库来使应用支持热部署,开启后无需手动重启Spring Boot应用就能实现自动加载,并且加载速度比手动重启快很多,大大提高了开发者的开发效率。
原理
DevTools会监控我们classpath的资源的变化,当classpath资源有变化后,会触发重启。即如果我们改动classpath下的部分代码,编辑器会自动触发编译并替换掉旧的.class字节码文件后,项目检测到有文件变更后会重启SrpringBoot项目。
使用
引入依赖
1 | <dependency> |
配置IDEA
- 依次点击
Perferences
→Build,Excution,Deployment
→Compiler
, 勾选Build project automatically
, 勾选后点击OK

- 双击
shift
后输入Registry
,然后点击Actions栏中的第一个Registry...
选项

打开后找到compiler.automake.allow.when.app.running
该选项并勾选上
,然后点击关闭。

至此,IDEA的配置就算完成了。当我们启动项目后,对部分代码做了改动后,大概等个3-5s后触发dev-tool后将自动更新项目。