SpringBoot开发模式自动重启热部署spring-boot-devtools

简介: SpringBoot开发模式自动重启热部署spring-boot-devtools

有几篇不错的文章


https://springframework.guru/spring-boot-developer-tools/

https://docs.spring.io/spring-boot/docs/current/reference/html/using.html#using.devtools

Triggering a restart

As DevTools monitors classpath resources, the only way to trigger a restart is to update the classpath. The way in which you cause the classpath to be updated depends on the IDE that you are using:


  • In Eclipse, saving a modified file causes the classpath to be updated and triggers a restart.
  • In IntelliJ IDEA, building the project (Build +→+ Build Project) has the same effect.


简而言之就是,不同IDE触发重启方式不一样

  • Eclipse保存文件既可以触发重启
  • IntelliJ IDEA 需要重新构建项目

热部署

1、页面热部署

application.properties文件中配置

spring.thymeleaf.cache=false

2、类文件热部署

spring-boot-devtools

1、添加依赖

<dependency>

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>

实际使用发现,不用配置application.yml也可以实现自动重启

2、修改配置application.yml

spring:
devtools:
restart:
enabled: true

3、将项目设置为自动加载

1、打开设置 勾选 Build project automatically

image.png

2、打开 Maintenance 选择 1.Register

快捷键 (一起按下四个按键)

windows: Ctrl + Shift +Alt + /

Mac : command + shift + option + /

6.png

3、勾选 compiler.automake.allow.when.app.running

image.png

IDEA过一会就会响应变化重启服务,如果想要快速触发,就重新编译


这里分享一份技巧:


保存文件的快捷键是 command + S


设置自动构建后需要等待一会才进行自动构建,这样明显不能等。

可以设置构建文件的快捷键:control + S,此时可以不设置自动构建,修改文件后手动进行构建。

Live Reload

Chrome插件 Live Reload 支持前端页面开发修改文件后自动刷新页面

注意:html、css、js文件同样需要build 到classpath路径下

总结:Spring Boot Live Reload

一、后端

使用依赖, 无需设置

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<!--当前这个项目被继承之后,这个不向下传递-->
<optional>true</optional>
</dependency>

java 代码的修改重启服务

二、前端

配合Chrome浏览器插件 Live Reload,无需设置

前端代码html、js、css文件的修改浏览器自动刷新

参考
SpringBoot热部署自动重启 spring-boot-devtools
            </div>
目录
相关文章
|
1月前
|
Java Maven Android开发
SpringBoot - 项目热部署与devtools
SpringBoot - 项目热部署与devtools
41 0
|
缓存 IDE 前端开发
Spring Boot 开发环境热部署(HotSwap)详解
前言 Spring Boot 提出了多项开箱即用的功能特性,但归根到底还是围绕简化应用的创建、开发、运行。开发环境下我们经常对项目代码进行变动,如果每次都重新启动应用会浪费我们大量时间,为此就产生了多种进行热部署的方案,可以在不重启的情况下使用新的代码。
367 0
Spring Boot 开发环境热部署(HotSwap)详解
|
搜索推荐 Java Maven
idea springboot 热部署,让项目不再重启
idea springboot 热部署,让项目不再重启
465 0
idea springboot 热部署,让项目不再重启
|
Java 开发者
三步实现Idea的springboot配置热部署(修改代码自动启动springboot程序)
三步实现Idea的springboot配置热部署(修改代码自动启动springboot程序)
|
Java Spring
IDEA2021.3 开发Spring Boot配置热部署
1. 在pom.xml中添加依赖: 2.idea设置 3.在设置中继续找到高级选项
286 0
IDEA2021.3 开发Spring Boot配置热部署
|
Java 编译器 Android开发
Springboot 整合devtools实现热部署
Springboot 整合devtools实现热部署
123 0
Springboot 整合devtools实现热部署
|
Windows
Idea+Gradle+SpringBoot热部署、热更新
Idea+Gradle+SpringBoot热部署、热更新
365 0
Idea+Gradle+SpringBoot热部署、热更新
|
Java
Idea SpringBoot项目热部署、热更新
Idea SpringBoot项目热部署、热更新
767 0
Idea SpringBoot项目热部署、热更新
|
Java
Springboot 学习笔记之配置 devtools 实现热部署
Springboot 学习笔记之配置 devtools 实现热部署
110 0
|
Java Android开发
SpringBoot【实现热部署-devtools】
本文介绍下在IDEA中项目热部署的两种方式,因为如果每次我们修改下页面的代码都需要重新启动的话那么效率就太低了。
SpringBoot【实现热部署-devtools】