为了账号安全,请及时绑定邮箱和手机立即绑定

SpringBoot热部署加持

标签:
Java SpringBoot

Ultrafine 5K


概述

进行SpringBoot的Web开发过程中,我们很多时候经常需要重启Web服务器才能保证修改的 源代码文件、或者一些诸如xml的配置文件、以及一些静态文件生效,这样耗时又低效。所谓的热部署指的是我们不需要重启Web Server就可以保证各项文件修改的立即生效。下面便来介绍一下在IDEA中进行SpringBoot的Web开发时如何加入热部署的支持。

这里我们是使用 spring-boot-devtools 来帮助完成这个事情,其是一个为开发者服务的模块,可以实现SpringBoot热部署。其机理就是 spring-boot-devtools 会监听classpath下的文件变动,变动保存生效,其就会立即重启应用。



pom.xml中添加依赖

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
        </dependency>


设置IDEA环境自动编译

首先在编译器选项中选中自动编译工程的选项,如下图所示,

设置IDEA自动编译

接下来我们利用快捷键:Command + Shift + Alt + / 来调出Registry窗口,然后勾选其中的编译器自动编译选项,如下图所示:

设置IDEA自动编译



启动项目并实验

上面几个步骤设置完成以后,我们去项目的根目录下执行命令来启动SpringBoot应用:

mvn clean spring-boot:run

此时的效果是只要我们修改了编辑区的源代码,保存之后,应用程序便会自动重启让修改生效。



监听文件夹的变化

上面我们是修改源代码时的自动热启动,除此之外,我们还可以设置 spring-boot-devtools 来监听某个文件夹的变化,比如我们想监听某个静态文件夹下文件的变化(如html文件),当其下面的文件改变的时候能够重新启动SpringBoot,那么我们只要在配置文件 application.properties 中添加如下配置即可:

spring.devtools.restart.additional-paths = src/main/resources/templates 

随后再次实验,取得的效果和之前一样,热启动便生效了



后记

作者更多的SpringBt实践文章在此:


如果有兴趣,也可以抽点时间看看作者一些关于容器化、微服务化方面的文章:


点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
1.5万
获赞与收藏
3043

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消