Spring Boot 热部署

image

相信小伙伴们在日常的开发中,调试代码时,免不了经常修改代码,这个时候,为了验证效果,必须要重启 Spring Boot 应用。

频繁地重启应用,导致开发效率降低,加班随之而来。有没有什么办法,能让 Spring Boot 项目热部署呢,从而不用每次都手点。答案是肯定的

第一步:添加 spring-boot-devtools 依赖

Spring Boot 提供了 spring-boot-devtools, 它能在我们修改类或者配置文件后,自动感知,重新启动应用。我们只需要在 pom.xml 文件中,添加下面依赖:

<!-- SpringBoot自带热加载开发工具 -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-devtools</artifactId>
	<optional>true</optional>
</dependency>

第二步:设置 Idea

由于 Idea 默认是没有开启自动编译功能的,我们还需要做以下设置:

1.单击左上角 File -> Setting -> Build, Execution, Deployment -> compiler, 勾选 Build project automatically:

image

2.windowns 系统按快捷键 Shift+Ctrl+Alt+/ , 单击 Registry,勾选 compiler.automake.allow.when.app.running

image

image

添加完成后,重启应用。为了验证热部署是否集成成功,我们将接口的路径改一下,保存:

package site.exception.springboothello.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
* @author explorer
* @date 2023/10/06
* @time 13:58
* @discription
**/
@RestController public class TestController {
    @GetMapping("/hellospringboot")
    String hello() {
        return "Hello, Spring Boot !";
    }
}

观察控制台,打印了项目的启动日志,证明 Spring Boot 已经检测到了 class 文件发生了变化,自动重启了。

访问新的接口 /hellospringboot, 看看是否生效?

image

最后

最后,欢迎大家留言,咱们一起讨论技术问题,也可以扫描左侧二维码关注我,回复B01b01,免费领取java资料和面试题!

posted @ 2023-10-06 10:40  深码青年  阅读(190)  评论(0编辑  收藏  举报