IDEA 配置 JRebel 热部署的方法(推荐)
在平常的开发项目中,我们改动代码需要频繁的重启,如果机器配置不好、项目比较大的情况下,重启一次项目,多则 5 ~ 6 分钟,少则 2 ~ 3 分钟,效率低而且极其浪费时间。
如果我们能实现项目启动后,改动代码不需要重启,让代码实现热加载就可以大大提高开发效率,而 JRebel 就是这样的工具,能帮助我们在 99% 的场景下,修改代码不重启,直接热加载就可以让代码生效。
JRebel 是什么
JRebel 是国外团队开发的一款收费工具,JRebel 允许开发团队在有限的时间内完成更多的任务修正更多的问题,发布更高质量的软件产品,JRebel 可快速实现热部署,节省了大量重启时间,提高了个人开发效率。
JRebel 是一款 JAVA 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。
下面我们以 IDEA + SpringBoot 项目为例,来配置下 JRebel 的强大热加载功能。
JRebel 插件安装
首先,我们需要在 IDEA 里面安装好 JRebel 的插件。
在 settings->plugins->marketplace 内搜索 JRebel,点击安装后,再重启 IDEA(我电脑已经安装过了,所以显示的是 Installed)。

安装好 JRebel 后,我们会看到两个跟 JRebel 相关的东西。
第一:项目启动处,多了 JRebel 图标。

第二:在IDEA设置处,多了个JRebel的选项。

JRebel 激活
插件安装完成,因为 JRebel 是收费的,我们需要将它激活,我们在 settings->Jrebel&XRebel 部分,点击激活(我已经激活,显示的是 change license)。

点击后,会弹出激活窗口:

通过 JRebel 激活地址获取获取一个激活地址。
激活地址输入到 Team URL 内,邮箱随意输入,点击激活即可。
生成 JRebel 热加载文件
在插件安装、激活完成后,我们需要在项目内生成一下配置文件。
view->ToolWindows 内,我们可以看到 JRebel 选项。

我们点击 JRebel,会弹出一个窗口如下:

我们把红色标识出来的位置,全部勾选上,每个模块下的 resources 会生成一个 rebel.xml 文件。

IDEA 开启热加载
JRebel 的热加载文件已经生成好后,我们就需要开启 IDEA 的热加载选项。
我们找到启动项目的 Debug Configurations ,进行如下配置:

表示热加载的时候,更新 class 跟 resources 文件。
JRebel 热加载测试
在上面配置完成后,我们通过 JRebel 的 debug 模式进行启动,就是下面圈出来的部分,通过这个进行启动。

控制台会打印以下日志内容,表示已经通过Jrebel启动了:

项目启动后,如果改动了代码,我们就不需要在重启项目,直接点击下面的红色部分,进行热加载,然后改动的部分就生效了,JRebel 的热加载功能,能覆盖 99% 的热加载,无论是改动源代码、xml 文件、新增类,都可以热加载完成而不需要重启,大大提高了我们的开发效率。

总结
通过上面的配置,我们就可以愉快的使用热加载功能了,提供我们的开发效率,从而拒绝 996,实现 965 的工作机制。
最后在总结一下 JRebel 的配置过程:
在 IDEA 内搜索 JRebel,然后安装插件
在 settings -> JRebbel&XRebel 进行激活插件
在 views->Tool Windows 找到 JRebel,生成热加载文件
在 IDEA 的 Debug Configuraions,开启热加载
JRebel Debug 模式启动项目
改动代码,通过 Update Application 按钮,完成代码的热加载
当然,更多的配置可以通过查看 JRebel 官方文档 进行修改、配置。
到此这篇关于IDEA 配置 JRebel 热部署的方法的文章就介绍到这了,更多相关IDEA 配置 JRebel 热部署内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Java8 stream 中利用 groupingBy 进行多字段分组求和案例
这篇文章主要介绍了Java8 stream 中利用 groupingBy 进行多字段分组求和案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-08-08
controller接口跳转到另一个controller接口的实现
这篇文章主要介绍了controller接口跳转到另一个controller接口的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-09-09
java 中HashMap、HashSet、TreeMap、TreeSet判断元素相同的几种方法比较
这篇文章主要介绍了从源码的角度浅析HashMap、TreeMap元素的存储和获取元素的逻辑;从Map与Set之间的关系浅析常用的Set中元素的存储和判断是否重复的逻辑,需要的朋友可以参考下2017-01-01


最新评论