参考
https://blog.csdn.net/asing1elife/article/details/82696822
https://blog.csdn.net/qq_36868342/article/details/84194711
一、首先IDEA需要先下载安装Jrebel for IntelliJ 插件:
Preferences - Plugins - 搜索 jrebel for IntelliJ ,右侧install下载安装(下载插件可能会很慢,耐心等待)
安装 jrebel for IntelliJ 完成后(安装完成后需要重启),需要激活这个插件,否则是用不了的。这里用的是 @lanyu 分享的激活方式,使用反向代理连接到@lanyu的域名进行激活。
二、使用@lanyu的反向代理工具激活插件
反向代理工具git下载地址:https://github.com/ilanyu/ReverseProxy/releases/tag/v1.4
我这里用的是mac版的,可以直接下载ReverseProxy_darwin_amd64(百度云https://pan.baidu.com/s/1QXBswq-TYJ5vg6cx7vRbOQ),下载之后终端运行:
使用mac终端,命令进入到ReverseProxy_darwin_amd64所在目录,执行两个命令:赋权及运行文件
cd Jrebel\ for\ mac/#这里是ReverseProxy_darwin_amd64文件存放的目录
chmod 777 ./ReverseProxy_darwin_amd64
$bash ./ReverseProxy_darwin_amd64
执行结果:
表示代理成功,这里先不要关闭终端。
IDEA打开Preferences,左侧菜单选中JRebel,右侧会有Activate now的超链接,点击弹窗,窗口上有三个激活方式,选中Connect to online licensing service,
服务器地址框内输入http://127.0.0.1:8888/e0c30998-ec69-4cf2-9fc2-370ca01d480d (这里如果提示激活失败,可能是参数GUID已经被使用了,这里 https://www.guidgen.com 生成新的GUID覆盖掉url的参数重新激活)
邮箱随意输
下边勾选同意协议,然后点击 [CHANGE LICENSE] 按钮执行激活,JRebel右侧的状态为绿色VALID表示激活成功了。
激活成功后需要将当前插件切换到离线模式,即 点击右侧 [Work offline] 按钮切换到离线模式,[ok] 按钮保存修改。
至此完毕,下图为激活后的离线模式:
至此,终端可以关闭掉了
之后每隔半年需要重新激活一次:
终端进入ReverseProxy_darwin_amd64所在目录,运行ReverseProxy_darwin_amd64文件(运行后终端暂时别关),JReble注册界面替换新的GUID,并进行注册操作,切换离线模式 保存修改。完。
三、运行并测试
左侧IDEA的运行调试可以不用了,改用插件的运行和调试,使用这里的运行或者调试, 热更新才会生效
测试是否成功:
执行方法中输出打印内容:
System.out.println("------1-----");
运行程序,执行之后控制台输出对应内容,如图,
修改输出内容:
System.out.println("------2-----");
JRebel会自动编译修改后的源码(或者手动编译mac的是command+F9,win的好像是control+F9),然后进行热更,热更完后,控制台会给出对应的提示信息 Jrebel:....
再次执行这个方法,控制台输出内容变了,说明热更安装成功: