JRebel是一款JVM插件,它使得Java代码修改后不用重启系统,立即生效。
IDEA上原生是不支持热部署的,一般更新了 Java 文件后要手动重启 Tomcat 服务器,才能生效,浪费时间。
目前对于idea热部署最好的解决方案就是安装JRebel插件。

一、安装

第一步:安装插件在这里插入图片描述
第二步:在线GUID地址:在线生成GUID

网址:在线GUID地址
在这里插入图片描述

如果失效刷新GUID替换就可以!
服务器地址:https://jrebel.qekang.com/{GUID}

第三步:打开jrebel 如下所示面板,选择Connect to online licensing service

在这里插入图片描述
安装成功之后就可以通过JRebel启动项目。这样修改完Java代码后,就可以通过快捷键 Ctrl+shift+F9 而不再需要重启站点这样繁琐浪费时间的操作了。

二、相关设置

1、设置成离线工作模式在这里插入图片描述在这里插入图片描述
2、设置自动编译(这一步可以省略,因为没必要,你可能写了好多代码之后才需要编译一次)

要想实现热部署,首先需要对Intellij按如下进行设置:

由于JRebel是实时监控class文件的变化来实现热部署的,所以在idea环境下需要打开自动变异功能才能实现随时修改,随时生效。
在这里插入图片描述

3、打开运行时编译

设置compiler.automake.allow.when.app.running
快捷键ctrl+shift+A,搜索:registry
或者
按快捷键 Ctrl+Shift+Alt+/ ,选择 Registry个人推荐这个方法,比较便捷
在这里插入图片描述在这里插入图片描述

三、使用

1、注意:运行项目时要点击图中红框中的按钮,即可运行:而非原生的idea启动方式在这里插入图片描述

第一个按钮是Run,第二个按钮是Debug。

修改代码(只测试了Java代码的修改)后,按快捷键 Ctrl + Shift + F9,运行后会提示有变化是否重新加载,选yes。完成加载以后,就已经实现了热更新效果。

2、修改热部署时间

Jrebel的设置 file->setting->JRebel->time Saved Statistics
这个下面有个时间线,可以自己调一下,滑到最左边是1秒生效。

四、热部署不生效解决方案

1、确保插件安装成功

如果下图箭头处显示的是卸载,就说明已经安装成功了。就可以进入下一步检查了。
在这里插入图片描述

2、确保启动了编辑器自动编译的功能

在这里插入图片描述
具体可以移步这里

3、确保是以Jrebel方式启动

在这里插入图片描述
也就是,以下图方式启动,而非原生的idea启动方式:
在这里插入图片描述

4、确保对项目进行了热部署的设置

在这里插入图片描述
在View > Tool Windows > JRebel 中打开JRebel的视图,勾选上需要启动热部署的项目,具体效果如下图所示:
在这里插入图片描述
后记:
使用jrebel可能会出现如下警告

Unable to find rebel.xml in artifact xxx,This file is required to enable JRebel reloading.

消除方法可参见这里

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐