欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Intellij2017下springboot项目启动热部署功能

程序员文章站 2022-04-23 08:46:30
...

当我们修改了一个java类的时候,需要在修改后尽快看到效果是否实现,就需要用到热部署。它的原理是在发现代码有更改之后,重新启动应用,所以速度比手动停止后再启动更快。SpringBoot为我们提供了一个非常方便的工具spring-boot-devtools。因为devtools会监听classpath下的文件变动,所以当java类重新编译的时候,devtools会监听到这个变化,然后就会重新启动SpringBoot。这个重启是非常快的一个过程。因为在SpringBoot中有两个类加载器,一个是加载工程外部资源的,如jar包,还有一个类加载器是用来加载本工程的class的。所以在重启SpringBoot的时候只加载本工程的class文件。

pox.xml

在pom.xml中添加devtools工具的依赖,并修改设置

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <fork>true</fork>
                </configuration>
            </plugin>
        </plugins>
    </build>

ctrl+shift+A 查找compiler(编译器) 勾选其中的 build project automatically(自动构建项目)

Intellij2017下springboot项目启动热部署功能

ctrl+shift+alt+/ 打开 maintenance(维修) 点击Registry(注册) 勾选Compiler.autoMake.allow.when.app.running

Intellij2017下springboot项目启动热部署功能

这样就可以实现热部署的功能了