在实际开发中,我们修改某些代码或页面都需要重启应用后才能生效,如果每次都手动重启,会降低了开发效率;热部署是指当我们修改代码后,服务能自动重启加载新修改的内容,这样大大提高了我们开发的效率;
手动触发
Spring Boot热部署插件通过添加一个maven依赖来实现;
1、依赖为:spring-boot-devtools,只需要在Maven中配置即可使用:
|----------------------------------------------------------------------------------------------------------------------------------|
| <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> |
2.修改完代码后,右键项目 Build Module xxx,让项目编译一下,该插件是监听你的classpath下的文件发生变化后触发自动重启;
自动触发
具体步骤:
1、IDEA开启自动编译功能,在IDEA中File -> Settings -> Build, Execution, Deployment -> Compiler,确保Build project automatically选项是勾选的;
2、Ctrl+Shift+Alt+/ 打IDE的设置对话框,然后选择Registry,在列表中查找compiler.automake.allow.when.app.running并勾选它;(老版本的IDEA)
新版本的IDEA在File -> Settings -> Advanced Settings -> Compiler -> Allow auto-make to start even if developed application is currently running 确保该选项是勾选的;
当然,该热部署插件在实际使用中也可能会遇到热部署不生效的情况,如果遇到这种情况,就手动重启一下程序,比如新加了一个依赖jar包,此时都需要手动重启一下;