博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot(十二)DevTools热部署
阅读量:7302 次
发布时间:2019-06-30

本文共 1127 字,大约阅读时间需要 3 分钟。

devtools模块,是为开发者服务的一个模块。主要的功能就是代码修改后一般在5秒之内就会自动重新加载至服务器,相当于restart成功。与不同的是,JRebel是一款商业插件,devtools是免费的。

devtools:是boot的一个热部署工具,当我们修改了classpath下的文件(包括类文件、属性文件、页面等)时,会重新启动应用(由于其采用的双类加载器机制,这个启动会非常快,如果发现这个启动比较慢,可以选择使用jrebel) 双类加载器机制:boot使用了两个类加载器来实现重启(restart)机制:base类加载器(简称bc)+restart类加载器(简称rc)。 bc:用于加载不会改变的jar(eg.第三方依赖的jar) rc:用于加载我们正在开发的jar(eg.整个项目里我们自己编写的类)。当应用重启后,原先的rc被丢掉、重新new一个rc来加载这些修改过的东西,而bc却不需要动一下。这就是devtools重启速度快的原因。

在使用IDEA做SpringBoot的web项目的时候,在每一次修改了java文件或者是resource的时候,都必须去重启一下项目,这样的话浪费了很多的时间,那么,这个时候,就需要去实现程序的热部署,能够在修改了页面的时候能够立马刷新显现出新的效果。

v热部署

1.1 在设置中勾中Build project automatically

SpringBoot(十二)DevTools热部署

1.2 使用快捷键Ctrl + shift + alt + /,打开Maintenance操作面板,选择Registry,打开Registry操作面板

SpringBoot(十二)DevTools热部署

1.3 找到并勾线"compiler.aut0make.allow.when.app.running",点击Close关闭操作面板。

SpringBoot(十二)DevTools热部署

1.4 启动应用,查看日志。

SpringBoot(十二)DevTools热部署

1.5 更新某个类文件进行验证。

 SpringBoot(十二)DevTools热部署

如上图,spring-boot-devtools将会自动重启,留意观察控制台的日志。

v热加载(LiveReload)

2.1 在谷歌商店添加LiveReload插件

 SpringBoot(十二)DevTools热部署

SpringBoot(十二)DevTools热部署

2.2 启动项目查看效果

SpringBoot(十二)DevTools热部署

2.3 更新之后效果

SpringBoot(十二)DevTools热部署

2.4 其他方式

关于热加载的方式,启动以后如果html有更新,直接F5刷新也是好使的。

作  者:
出  处:
关于作者:专注于基础平台的项目开发。如有问题或建议,请多多赐教!
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者我
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【】一下。您的鼓励是作者坚持原创和持续写作的最大动力!

你可能感兴趣的文章
结构体中指针赋值问题的分析及C代码示例
查看>>
java并发编程学习:如何等待多个线程执行完成后再继续后续处理(synchronized、join、FutureTask、CyclicBarrier)...
查看>>
TortoiseGit配合msysGit在Git@OSC代码托管的傻瓜教程
查看>>
边缘计算“CROSS”欧洲新战场
查看>>
WeUI—微信官方UI库
查看>>
KNIMI数据挖掘建模与分析系列_004_利用KNIMI做客户流失预测
查看>>
Nginx中的root&alias文件路径及索引目录配置详解
查看>>
用Keras开发字符级神经网络语言模型
查看>>
Socket编程中的强制关闭与优雅关闭及相关socket选项
查看>>
1682亿!!阿里工程师如何喝着茶创造双11奇迹?
查看>>
《音乐达人秀:Adobe Audition实战200例》——1.3 数字录音记录生活越来越便捷
查看>>
东半球最先进的 debug 技巧
查看>>
《CCNP安全防火墙642-618认证考试指南》——第1章Cisco ASA自适应安全设备概述
查看>>
ToroDB —— 基于 PostgreSQL 的 JSON 数据库
查看>>
尊敬的开发世界,现出你的梦魇吧,我来了
查看>>
《Java多线程编程核心技术》——1.9节yield方法
查看>>
《WebGL入门指南》——第2章,第2.5节本章小结
查看>>
《Android开发基础教程》——6.2节Gallery界面组件——画廊展示
查看>>
《图数据库》——1.4 小结
查看>>
《Android 应用案例开发大全(第3版)》——第1.3节Android开发环境的搭建
查看>>