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后方能生效。

相关推荐
曹牧5 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
爬山算法6 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty7256 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎6 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄6 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea
忆~遂愿7 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
小韩学长yyds7 小时前
Java序列化避坑指南:明确这4种场景,再也不盲目实现Serializable
java·序列化
仟濹7 小时前
【Java基础】多态 | 打卡day2
java·开发语言
Re.不晚7 小时前
JAVA进阶之路——无奖问答挑战2
java·开发语言
Ro Jace8 小时前
计算机专业基础教材
java·开发语言