IDEA怎么用Devtools热部署

IDEA怎么用Devtools热部署

大家知道在项目开发过程中,有时候会改动代码逻辑或者修改数据结构,为了能使改动的代码生效,往往需要重启应用查看改变效果,这样会相当耗费时间。

重启应用其实就是重新编译生成新的Class文件,这个文件里记录着和代码等对应的各种信息,然后Class文件被虚拟机的ClassLoader重新加载。

而热部署正是利用了这个特点,它监听到如果有Class文件改动了,就会创建一个新的ClaassLoader进行加载该文件,经过一系列的过程,最终将改动的结果呈现在我们眼前。

1. Adding devtools to your project

在项目Maven配置中增加devtools依赖

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

2. Adding plugin to your pom.xml

pom.xml中增加spring-boot-maven-plugin插件依赖

xml 复制代码
<!-- 下段配置我们粘贴进聚合父类总工程的pom.xml里-->
 
<build>
    <finalName>你自己的工程名字</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <fork>true</fork>
                <addResources>true</addResources>
            </configuration>
        </plugin>
    </plugins>
</build>

3. Enabling automatic build

在设置中,开启自动编译

4. Update the value of

修改注册表维护中修改下面的配置值

注意:

如果IDEA是2021.2后的版本,则上面的compiler.automake.allow.when.app.running配置在高级设置中:

5. 重启IDEA

重启IDEA后方能生效。

相关推荐
运维行者_几秒前
ITOps自动化:全面解析
java·服务器·开发语言·网络·云计算
Chase_______2 分钟前
【Java杂项】为什么 b += 1 可以,但 b = b + 1 会报错?类型提升与复合赋值详解
java·开发语言·python
勿忘,瞬间5 分钟前
Spring日志
java·spring boot·spring
AI人工智能+电脑小能手6 分钟前
【大白话说Java面试题 第62题】【JVM篇】第22题:怎么查看服务器默认的垃圾回收器是哪一个?
java·服务器·jvm·面试
app开发工程师V帅9 分钟前
Xcode 工程内引入工程、framework内引入framework、OC的framework引入swift 的framework等等
ide·macos·xcode
yqzyy13 分钟前
C#如何优雅处理引用类型的深拷贝(十一)
java·网络·nginx
yueping214 分钟前
运行jar文件报错jar中没有主清单属性在idea里面怎么解决
pycharm·intellij-idea·jar
范什么特西16 分钟前
idea里面jsp找不到图片
java·开发语言·servlet
23.18 分钟前
【分析】网关故障排查指南:如何区分并定位‘上游’与‘下游’问题
java
BestOrNothing_201519 分钟前
VS Code 中 Codex 功能详解:登录、IDE上下文、Token窗口、使用额度与重连问题说明
ide·agent·token·vs code·codex·reconnection