springboot热部署

springboot热部署

为了进一步提高开发效率,springboot为我们提供了全局项目热部署,日后在开发过程中修改了部分代码以及相关配置文件后,不需要每次重启使修改生效,在项目中开启了springboot全局热部署之后只需要在修改之后等待几秒即可使修改生效。

引入依赖

java 复制代码
<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-devtools</artifactId>
   <optional>true</optional>
</dependency>

设置idea配置自动编译

开启允许在运行过程中修改文件

这里修改的操作是2021 版本的idea的操作。

在任意java文件中按下 ctrl + alt + shift + / ---->选择1.Registry ---> 勾选 compiler.automake.allow.when.app.running 这个选项

另外2023年版本的idea,操作如下:

鼠标右键:File --> Settings --> Advanced Settings --> 勾选 Allow auto-make to start even...

启动项目验证

解释原理

当开发人员修改了应用程序的代码或配置文件后,Spring Boot DevTools 会检测到这些修改。

Spring Boot DevTools 会重新编译应用程序的代码,并将编译后的代码部署到应用程序的运行环境中。

应用程序会自动重新加载修改后的代码或配置文件。

我们这里做的只是自动编译和部署: IDEA 默认支持自动编译和部署功能。当你修改了代码后,IDEA 会自动编译修改的文件,并将其部署到运行中的应用程序中。确保在项目设置中启用了自动编译功能。算不上真正的热部署。

相关推荐
吠品6 小时前
volatile到底在拦什么:SysTick->VAL读的哪格
java·服务器·开发语言
新鲜势力呀6 小时前
PHP 定时任务系统实战:从 Cron 混乱执行到任务调度中心 + Redis队列 + 失败重试
android·java·redis
(Charon)7 小时前
【C/C++面试】手写内存池:从空闲链表到内存申请与释放
java·开发语言·windows
EatFan7 小时前
Spring Boot 4 迁移避坑清单:Jackson 3、starter 拆分与最低 JDK 口径核对(含若依/芋道/CRMEB 升级对照)
java·数据库·spring boot·spring boot 4·java 21·jakarta ee 11·jackson 3
栖凤7 小时前
多 Agent 工作流实践:从单打独斗到协同作战
java·linux·服务器
一木 之林7 小时前
DeepSeek Agent 开发
java·前端·人工智能
王霸天7 小时前
Three.js 模型体积优化:Draco/Meshopt 压缩与 DRACOLoader 配置的 4 个步骤
java·前端·javascript
sp427 小时前
Java 加解密组件再设计
java·后端
知守观7 小时前
从三个带病的 Guava 本地缓存出发:Redis + Guava 二级缓存的读写路径与失效设计推演
java·redis·后端
ThinkerQAQ_7 小时前
并发编程(七):volatile——从语言规则到 CPU
java·python·go