使用JRebel插件实现SpringBoot应用代码热加载

前言
在实际的开发过程中,我们经常修改代码之后,手动的重启项目,查看修改效果。那么有没有一种方式能够快速的、自动的帮我们将修改代码自动更新,避免手动重启,从而提高开发效率呢?是有的,在我之前的文章里面给读者介绍了使用springboot-devtools实现热加载的方法。本文就给大家介绍另外一种方式:使用Jrebel插件完成修改代码及资源的自动更新功能。
但是对于这个功能很多人对功能的叫法有争议,笔者查询了维基百科、官方文档,没有得到合理的答案,也没有权威的定义,笔者知道的就有:热启动、热加载、热更新、热部署、热切换。这几个词从语义上是有区别的,但是叫什么并不重要,实现了最重要,毕竟绝大部分程序员为了使用这个功能方便开发,也不是专业的搞学术研究的。
如果哪位同学获得了权威渠道的说法,可以将文档连接反馈给我。我再理解一下,争取做到学术研究级别的一丝不苟!在此之前笔者按照自己的想法和英文翻译的角度去使用这些名词。
使用Jrebel插件实现热加载,这是最简单的一种方式,但是有一定的个局限性,Jrebel插件是收费的。虽然有破解方案,但是不建议!有需要的同学自行研究,这里就不多做介绍了。(如果确实有需要,可以参考文末的我的博客地址)
第一步:安装插件
IntelliJ IDEA是笔者最常使用的IDE,本文就以在IDEA中Jrebel的安装及使用进行示例说明。按照箭头所示选择安装。安装完成之后,要重启IDEA才能生效。

第二步:激活插件
在安装完成之后,右上角会多出这样几个按钮。点击之后会提示你进行插件激活,可以购买注册码激活,也可以在线激活。也可以填写个人姓名、邮箱、电话之后获取10天的试用期!

第三步:更新操作触发配置
这个配置不仅结合Jrebel使用有效,对于其他的方式实现热加载,代码及资源的自动更新也同样适用。

在Spring Boot项目启动配置中,选择下图中的红色框中的内容:uodate classes and resources on ‘update’ action

配置完成后,通过右上角的JR按钮启动SpringBoot项目。就可以实现改动代码和资源的自动更新。
最后还是要说明一下,这种方式虽然简单,但是Jrebel插件是收费插件。如果经济上不困难,请尊重原作者的劳动成果。
期待您的关注
- 博主最近新写了一本书:《手摸手教您学习SpringBoot系列-16章97节》
- 本文转载注明出处(必须带连接,不能只转文字):字母哥博客。
使用JRebel插件实现SpringBoot应用代码热加载的更多相关文章
- 最简破解-java代码热加载热部署IDEA插件JRebel
如果经济实力允许的话,还是建议大家去购买收费版.支持原创作者,才能有更好的产品出现. 一.Jrebel插件介绍 JRebel一款帮助我们在开发过程中实现热加载的插件,目前来说,在IDEA中实现热加载最 ...
- SpringBoot自带热加载开发工具
SpringBoot自带热加载开发工具 maven配置: <!-- SpringBoot自带热加载开发工具 --> <dependency> <groupId>or ...
- springboot idea 配置热加载
在idea 配置springboot的热加载,只需要三步: 第一步.引用jar包 <dependency> <groupId>org.springframework.boot& ...
- Eclipse tomcat插件禁用热加载
Eclipse中的tomcat插件默认是开户了热加载,只要是修改了java文件一保存,tomcat自动编译.加载.发布,很吃内存. 关闭方法: 打开eclipse,找到server项: 双击打开,修改 ...
- (译文)开始学习Webpack-应用TypeScript,配置热加载和Source Map
项目初始化:采用TypeScript 我们的版本是: $ node --version v8.5.0 $ npm --version 5.5.1 npm版本升级了,因为npm最近带来了新特性,本地会生 ...
- 基于JRebel开发的MybatisPlus热加载插件
前言 前天项目中使用了mybatis-plus,但是搭配Jrebel开发项目时,发现修改mapper的xml,或者mapper方法中的注解,Jrebel并没有能够reload mapper.于是就有了 ...
- IDEA下利用Jrebel插件实现JFinal项目main方法【热加载】
IDEA下利用Jrebel插件实现JFinal项目main方法[热加载] Jrebel破解办法 https://github.com/ilanyu/ReverseProxy/releases/tag/ ...
- SpringBoot SpringCloud 热部署 热加载 热调试
疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 架构师成长+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] Crazy-Sp ...
- SpringBoot开发 - 什么是热部署和热加载?devtool的原理是什么?
在SpringBoot开发调试中,如果我每行代码的修改都需要重启启动再调试,可能比较费时间:SpringBoot团队针对此问题提供了spring-boot-devtools(简称devtools)插件 ...
随机推荐
- 一起看期待已久的.NET Core 3.0新的单文件部署特性,记在昨日VS2019更新后
VS2019又又又迎来一次新的更新,这次的重点在.NET Core, 妥妥的更新好,默默地反选2.2,一切都在意料之中. 这次我们来看VS2019的新特性单文件部署: https://www.talk ...
- node连接数据库
一.在package.json依赖模块添加: "mysql" : "latest",执行npm install: 二.module目录下新建mysql.js: ...
- 使用SpringDataRedis的入门
在使用ssm框架下,我们会到redis做缓存. 1> 第一步,导包. <!-- Redis客户端 --> <dependency> <groupId>redi ...
- Maven 梳理 -eclipse中创建Maven的web项目
已验证成功: 1.创建Maven的Web工程 新建Maven工程:File -> New -> Maven Project,具体如下所示: 点击Next进入下述页面,下方的窗口是我们选择所 ...
- vue 条件渲染方式
1.通过class绑定 <div :class="{'div-class': this.align == 'center'}"></div> 对应的css ...
- 【ADO.NET基础】加密方法公共类
各种加密方法集锦: using System; using System.Security.Cryptography; using System.Text; using System.IO; usin ...
- 利用Python与selenium自动化模拟登陆12306官网!
近年来,12306的反爬越来越来严重,从一年前的 获取tk参数后到现在增加了 JS.CSS等加密方式! 目前大部分人利用的登陆方式都是利用selenium ,此文也不例外. 环境: Wi ...
- ArcGIS Server服务扩展SOE应用场景
何时需要使用SOE? 用自己的业务逻辑扩展ArcGIS Server • 分析超越了即拿即用的GP工具 • 功能超越了Esri Web APIS中包含的内容 • 通过其他方式细粒度的ArcObject ...
- mysql创建用户和权限管理
一 权限管理 我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作.包括select.update.delete.update.grant等操作.那么一般情况在公司之后DBA工程师会创建 ...
- svg foreignObject的作用(文本换行,生成图片)
SVG内部利用foreignObject嵌入XHTML元素 <foreignObject>元素的作用是可以在其中使用具有其它XML命名空间的XML元素,换句话说借助<foreignO ...