Spring Boot 热部署实现指南

news/2025/2/4 20:17:05/

在开发 Spring Bot 项目时,热部署功能能够显著提升开发效率,让开发者无需频繁重启服务器就能看到代码修改后的效果。下面为大家详细介绍一种实现 Spring Boot 热部署的方法,同时也欢迎大家补充其他实现形式。

步骤一、开启 IDEA 自动编译功能

在 IntelliJ IDEA 中,我们首先要确保代码变动时能自动编译项目。操作步骤如下:

  • Windows/Linux 系统:依次点击菜单栏中的 File -> Settings
  • Mac 系统:点击 IntelliJ IDEA -> Preferences
    在弹出的设置窗口中,找到 Build, Execution, Deployment -> Compiler,勾选 Build project automatically。完成这一步后,当代码有变动时,IDEA 会自动进行编译。

 

步骤二、开启运行时自动更新(高版本 IDEA 可忽略)

对于低版本的 IntelliJ IDEA,我们还需要开启运行时自动更新功能,以确保项目在运行时能应用自动编译的结果。具体操作如下:
按下 Ctrl + Shift + Alt + /(Mac 系统为 Command + Shift + Option + /)组合键,选择 Registry。在弹出的窗口中,找到 compiler.automake.allow.when.app.running 并勾选。

步骤三、添加热部署依赖

在项目的 pom.xml 文件中添加 spring-boot-devtools 依赖,代码如下:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope>
</dependency>

添加该依赖后,当我们启动应用并修改 HTML 文件,保存后 DevTools 会自动重新加载静态资源。

步骤四、将 On "Update" action 和 On frame deactivation 改为 Update classes and resources

对于高版本的 IntelliJ IDEA,我们还需要进行额外的设置。打开 Edit Configurations 窗口,点击 Modify options,将 On "Update" action 和 On frame deactivation 选项都改为 Update classes and resources,然后点击 Apply 和 OK 保存设置。

完成以上所有步骤后,启动 Spring Boot 项目,你就可以体验到热部署带来的便捷啦。当然,这只是 Spring Boot 实现热部署的一种方式,如果你还有其他方法,欢迎一起分享交流。


http://www.ppmy.cn/news/1569315.html

相关文章

联想Y7000+RTX4060+i7+Ubuntu22.04运行DeepSeek开源多模态大模型Janus-Pro-1B+本地部署

直接上手搓了&#xff1a; conda create -n myenv python3.10 -ygit clone https://github.com/deepseek-ai/Janus.gitcd Januspip install -e .pip install webencodings beautifulsoup4 tinycss2pip install -e .[gradio]pip install pexpect>4.3python demo/app_januspr…

MongoDB中常用的几种高可用技术方案及优缺点

MongoDB 的高可用性方案主要依赖于其内置的 副本集 (Replica Set) 和 Sharding 机制。下面是一些常见的高可用性技术方案&#xff1a; 1. 副本集 (Replica Set) 副本集是 MongoDB 提供的主要高可用性解决方案&#xff0c;确保数据在多个节点之间的冗余存储和自动故障恢复。副…

STM32 PWM驱动舵机

接线图&#xff1a; 这里将信号线连接到了开发板的PA1上 代码配置&#xff1a; 这里的PWM配置与呼吸灯一样&#xff0c;呼吸灯连接的是PA0引脚&#xff0c;输出比较单元用的是OC1通道&#xff0c;这里只需改为OC2通道即可。 完整代码&#xff1a; #include "servo.h&quo…

Selenium 使用指南:从入门到精通

Selenium 使用指南&#xff1a;从入门到精通 Selenium 是一个用于自动化 Web 浏览器操作的强大工具&#xff0c;广泛应用于自动化测试和 Web 数据爬取中。本文将带你从入门到精通地掌握 Selenium&#xff0c;涵盖其基本操作、常用用法以及一个完整的图片爬取示例。 1. 环境配…

数字电子技术(十六)——CMOS反相器以及CMOS反相器的电路结构和工作原理

目录 1 单开关电路和双开关电路 2 CMOS反相器 2.1 CMOS反相器的电路结构 2.2 输入和输出的电压工作曲线 2.3 电压和电流的传输特性 2.4 输入噪声容限 1 单开关电路和双开关电路 如下所示为单开关电路的示意图&#xff1a; 图1 单开关电路图 对于单开关电路来说&#xff…

PaddleOCR 截图自动文字识别

春节假期在家无聊&#xff0c;撸了三个小工具&#xff1a;PC截图编辑/PC录屏(用于meeting录屏)/PC截屏文字识别。因为感觉这三个小工具是工作中常常需要用到的&#xff0c;github上也有很多开源的&#xff0c;不过总有点或多或少的小问题&#xff0c;不利于自己的使用。脚本的编…

6 [新一代Github投毒针对网络安全人员钓鱼]

0x01 前言 在Github上APT组织“海莲花”发布存在后门的提权BOF&#xff0c;通过该项目针对网络安全从业人员进行钓鱼。不过其实早在几年前就已经有人对Visual Studio项目恶意利用进行过研究&#xff0c;所以投毒的手法也不算是新的技术。但这次国内有大量的安全从业者转发该钓…

Linux+Docer 容器化部署之 Shell 语法入门篇 【Shell 循环类型】

文章目录 一、Shell 循环类型二、Shell while 循环三、Shell for 循环四、Shell until 循环五、Shell select 循环六、总结 一、Shell 循环类型 循环是一个强大的编程工具&#xff0c;使您能够重复执行一组命令。在本教程中&#xff0c;您将学习以下类型的循环 Shell 程序&…