提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:
记录IDEA编写springboot项目涉及的热部署问题。其它博客众说纷纭,参考了很多,好多都把几种方法搞混了,胡子眉毛一把抓,多此一举了,最后少了关键步骤,都不能用,服了,所以自己折腾了好久,记录一下可用的方法。

IDEA热部署的两种方法:

1、IDEA设置自带的重新加载功能(无需springboot-devtools依赖)
2、使用springboot-devtools依赖实现自动热部署

介绍了两种不同方法的配置方法及效果对比

IDEA版本:2019.1

提示:以下是本篇文章正文内容,下面案例可供参考

一、热部署方法介绍

1、IDEA设置自带的重新加载功能(无需springboot-devtools依赖)

  • 直接在application启动配置中,修改两个Update classes and resources选项,意思是有代码更新和IDEA切屏时自动重启spring应用。(应该可以一步到位,如果不行参考第二种方法对IDEA的设置)
  • 效果:修改代码保存后,自动重启。实时性可以,但有时不重启 ,切屏是100%重启,更快。重启过程挺快的
    在这里插入图片描述

2、使用springboot-devtools依赖实现自动热部署

  • (1)pom文件中导入devtools依赖
        <!-- 导入热部署依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
			<plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <fork>true</fork><!--必须添加这个配置-->
                </configuration>
            </plugin>
  • (2)IDEA设置
    添加自动构建项目
    在这里插入图片描述
    ctrl+shift+alt+/打开Registry,勾选compiler.automake.allow.when.app.running
    在这里插入图片描述
    在这里插入图片描述
    这种方法应该修改这几个设置就行了。

效果:修改代码后重启比较频繁,重启过程很快,但有时也出现重启后仍然是修改代码前的效果,具体原因未知。

二、总结

只对比了这两种方法,实质上两种方法都是重新启动了应用,具体差异也还没搞清楚。热部署就是个懒人配置而已,其它没特别大的效果,况且还不是完全实时可靠,属实仁者见仁智者见智了,仅供参考。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐