1.什么是SpringBoot热部署?
在实际开发过程中,每次修改代码就得将项目重启,比较耗费时间,热部署就是解决这个问题,当代码发生修改以后会自动重新编译
2.具体配置步骤
1.引用devtools依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
2.在pom.xml中添加插件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<addResources>true</addResources>
</configuration>
</plugin>
</plugins>
</build>
3.设置application.properties
#热部署开关,true开启,false关闭
spring.devtools.restart.enabled=true
4.在idea中设置自动编译
1.打开偏好设置搜索Compiler,勾选Build project automatically
2.command + SHIFT + A --> 查找Registry --> 找到并勾选compiler.automake.allow.when.app.running
如果快捷键冲突可以通过鼠标点击
3.注意事项
1、生产环境devtools将被禁用,如java -jar方式或者自定义的类加载器等都会识别为生产环境。
2、打包应用默认不会包含devtools,除非你禁用SpringBoot Maven插件的excludeDevtools属性。
3、Thymeleaf无需配置spring.thymeleaf.cache: false,devtools默认会自动设置
4、修改后需要等待几秒才会更新,留意下控制台会有重启信息