描述:

在我们使用spring-boot开发时,如果在开发者调试项目,边修改边调试运行,如果每次修改 java文件或者配置文件后都需要重新启动程序,如果程序启动比较慢的化,每次修改一点东西都要重新启动,这就太浪费时间了,不方便测试和修改,热部署技术就应用而生。

解决方案:

本人使用的时Idea 的开发工具,使用 spring-boot的 devtools 工具就能很方便的完成 热部署功能。

spring-boot-devtools的使用

1、项目引入依赖

在maven中添加依赖

<springboot-devtools.version>2.3.0.RELEASE</springboot-devtools.version>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-devtools -->
<!-- spring-boot-devtools 热部署 spring-boot 依赖包 optional true 可选依赖,子项目不会依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<version>${springboot-devtools.version}</version>
<optional>true</optional>
</dependency>

maven build plugins plugin configuration fork添加 <fork>true</fork> 这步不能少否则不能自动加载

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>

2、设置Idea 自动编译、自动加载

快捷键 Ctrl+Alt+s 打开设置 、build、compiler、build proje auto ~~~ 选择

Idea 中 使用 devtools 热部署 spring-boot 应用 无需重新启动-LMLPHP

快捷键Ctrl+Alt+Shift+/ 选择 registry、

Idea 中 使用 devtools 热部署 spring-boot 应用 无需重新启动-LMLPHP

设置 运行 configuration、spring-boot、

Idea 中 使用 devtools 热部署 spring-boot 应用 无需重新启动-LMLPHP

Idea 中 使用 devtools 热部署 spring-boot 应用 无需重新启动-LMLPHP

3、运行项目测试热部署

运行项目后,修改java代码 ,然后查看 event log窗口 出现

class reloaded Stop debug session ,这样的日志,就说明 成功热部署了

Idea 中 使用 devtools 热部署 spring-boot 应用 无需重新启动-LMLPHP

05-13 08:31