什么是热部署
实际开发过程中,修改应用的业务逻辑代码时常常需要重启应用,这显得非常繁琐,降低了开发效率,所以热部署对于开发来说显得十分必要。
应用启动后会把编译好的 Class 文件加载到虚拟机中,正常情况下载项目修改了 Java 源文件是需要全部重新编译并加载(需要重启应用),而热部署就是监听 Class 文件的变动,只把发生修改的 Class 重新加载,而不是重启应用。
SpringBoot 整合 Devtools 热部署工具步骤
1. 添加依赖包到 Model 的 pom 文件中
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
2. 添加插件到总工程的 pom 文件中
<build>
<finalName>你自己的工程名字</finalName>
<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. 开启自动编辑
4. 开启热注册
注意:IDEA 2021 及更高版本 compiler.automake.allow.when.app.running
这个选项的配置,改到 settings - Advanced Settings
这里了,如下: