IDEA 配置 JRebel 热部署的方法(推荐)

 更新时间:2021年01月12日 09:12:06   投稿:mrr  
这篇文章主要介绍了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 进行多字段分组求和案例

    这篇文章主要介绍了Java8 stream 中利用 groupingBy 进行多字段分组求和案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • Spring中的HandlerMapping执行流程详解

    Spring中的HandlerMapping执行流程详解

    这篇文章主要介绍了Spring中的HandlerMapping执行流程详解,HandlerMapping在Spring MVC框架的jar包下面,他是处理映射器,为用户发送的请求找到合适的Handler Adapter,它将会把请求映射为HandlerExecutionChain对象,需要的朋友可以参考下
    2023-08-08
  • Springboot使用POI实现导出Excel文件示例

    Springboot使用POI实现导出Excel文件示例

    本篇文章主要介绍了Springboot使用POI实现导出Excel文件示例,非常具有实用价值,需要的朋友可以参考下。
    2017-02-02
  • 关于Spring Cloud健康检查的陷阱

    关于Spring Cloud健康检查的陷阱

    这篇文章主要介绍了关于Spring Cloud健康检查的陷阱,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • controller接口跳转到另一个controller接口的实现

    controller接口跳转到另一个controller接口的实现

    这篇文章主要介绍了controller接口跳转到另一个controller接口的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • java实现小球碰撞功能

    java实现小球碰撞功能

    这篇文章主要为大家详细介绍了java实现小球碰撞功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-01-01
  • 浅谈单例模式和线程安全问题

    浅谈单例模式和线程安全问题

    这篇文章主要介绍了浅谈单例模式和线程安全问题,再某些特殊的情况下,存在一个类仅能用来产生一个唯一对象的必要性,因此需要单例模式,需要的朋友可以参考下
    2023-04-04
  • Java获取凌晨时间戳的方法分析

    Java获取凌晨时间戳的方法分析

    这篇文章主要介绍了Java获取凌晨时间戳的方法,结合实例形式对比分析了java时间戳运算的简单操作技巧,需要的朋友可以参考下
    2018-03-03
  • Java基于循环递归回溯实现八皇后问题算法示例

    Java基于循环递归回溯实现八皇后问题算法示例

    这篇文章主要介绍了Java基于循环递归回溯实现八皇后问题算法,结合具体实例形式分析了java的遍历、递归、回溯等算法实现八皇后问题的具体步骤与相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • java 中HashMap、HashSet、TreeMap、TreeSet判断元素相同的几种方法比较

    java 中HashMap、HashSet、TreeMap、TreeSet判断元素相同的几种方法比较

    这篇文章主要介绍了从源码的角度浅析HashMap、TreeMap元素的存储和获取元素的逻辑;从Map与Set之间的关系浅析常用的Set中元素的存储和判断是否重复的逻辑,需要的朋友可以参考下
    2017-01-01

最新评论