Spring Boot 热部署
一则或许对你有用的小广告
欢迎加入小哈的星球 ,你将获得:专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡/ 赠书活动
目前,
星球
内第2个项目《仿小红书(微服务架构)》正在更新中。第1个项目:全栈前后端分离博客项目已经完结,演示地址:http://116.62.199.48/。采用技术栈 Spring Boot + Mybatis Plus + Vue 3.x + Vite 4
,手把手,前端 + 后端全栈开发,从 0 到 1 讲解每个功能点开发步骤,1v1 答疑,陪伴式直到项目上线,目前已更新了 255 小节,累计 47w+ 字,讲解图:2090 张,还在持续爆肝中,后续还会上新更多项目,目标是将 Java 领域典型的项目都整上,如秒杀系统、在线商城、IM 即时通讯、权限管理等等,已有 1500+ 小伙伴加入,欢迎点击围观
。
相信小伙伴们在日常的开发中,调试代码时,免不了经常修改代码,这个时候,为了验证效果,必须要重启 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:
2.windowns 系统按快捷键 Shift+Ctrl+Alt+/, 单击 Registry,勾选 compiler.automake.allow.when.app.running:
添加完成后,重启应用。为了验证热部署是否集成成功,我们将接口的路径改一下,保存:
package site.exception.springboothello.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author www.exception.site(Exception 教程网)
* @date 2019/1/29
* @time 13:58
* @discription
**/
@RestController
public class TestController {
@GetMapping("/hellospringboot")
String hello() {
return "Hello, Spring Boot !";
}
}
观察控制台,打印了项目的启动日志,证明 Spring Boot 已经检测到了 class 文件发生了变化,自动重启了。
访问新的接口 /hellospringboot
, 看看是否生效?
大功告成!