Spring Boot2 IDEA 热部署

1) MAVEN依赖

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

2) CTRL + SHIFT + A --> 查找make project automatically --> 选中

3) CTRL + SHIFT + A --> 查找Registry --> 找到并勾选compiler.automake.allow.when.app.running

4) properties 中 spring.thymeleaf.cache=false #thymeleaf 不要缓存,生产环境可以去掉

5) 重启生效

6)dev tools 有2个ClassLoader,一个Classloader加载Jar包,另一个热部署ClassLoader加载代码,在有代码更改的时候,废弃掉热部署ClassLoader并重新创建一个热部署ClassLoader,把会变化的类重新加载,从而实现了热部署,且由于无需再次加载jar包,速度较快。

猜你喜欢

转载自blog.51cto.com/12708284/2318173