一、手动启动热部署
在进行 Spring Boot 的 Web 项目开发中,我们经常会遇到源代码文件、
配置文件等的修改,但每次修改后都会重启 Web 服务器才能修改后的文件生效,
这样很耗时,影响开发效率。而热部署就是不需要重启 Web 服务器就可以保证
各项文件修改后便立即生效。
在boot项目的pom文件中导入开发者服务模块的坐标
< dependency>
< groupId> org.springframework.boot</ groupId>
< artifactId> spring-boot-devtools</ artifactId>
</ dependency>
激活热部署:Ctrl + F9(也可以点击一下build)
二、自动启动热部署
settings-->Compiler-->勾选Build project automatically
然后,settings-->Advanced Settings -->勾选Allow auto-make to start even if developed application is currently running
旧版idea的这个设置需要同时按着ctrl+alt+shift+/
会弹出个对话框,选中Registry,然后勾选compiler.automake.allow.when.app.running
自启动热部署的激活方式为Idea失去焦点5秒后启动热部署(即idea 5s没有操作或者切换到浏览器或别的窗口5s)
三、热部署范围配置
在配置文件中添加如下配置,可以设置不参与热部署的文件或文件夹
spring:
devtools:
restart:
#设置不参与热部署的文件或文件夹
exclude: config/application.yml
四、禁用热部署
设置优先级高于配置文件的属性禁用热部署
@SpringBootApplication
public class ApplicationHotDeploy {
public static void main ( String [ ] args) {
System . setProperty ( "spring.devtools.restart.enabled" , "false" ) ;
SpringApplication . run ( ApplicationHotDeploy . class ) ;
}
}