美文网首页
Spring Boot配置devtools实现热部署

Spring Boot配置devtools实现热部署

作者: caoxingyu | 来源:发表于2020-05-09 10:08 被阅读0次

spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用。

1、 devtools的原理

深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间。

2、devtools的使用

使用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>

3、IDEA中配置

当我们修改了类文件后,idea不会自动编译,得修改idea设置。

  • (1) 勾选File-Settings-Compiler-Build Project automatically
  • (2) ctrl + shift + alt + / ,选择Registry,勾选 Compiler autoMake allow when app running


    idea配置1.png
idea配置2.png

相关文章

网友评论

      本文标题:Spring Boot配置devtools实现热部署

      本文链接:https://www.haomeiwen.com/subject/yyshnhtx.html