美文网首页MAC实用文章收藏javaidea的使用
【017今日分享】——IntelliJ IDEA - 热部署插件

【017今日分享】——IntelliJ IDEA - 热部署插件

作者: 龙圣贤 | 来源:发表于2016-04-16 22:53 被阅读31106次

IntelliJ IDEA - JRebel 安装使用教程

JRebel 能做什么?


JRebel 是一款热部署插件。当你的 java-web 项目在 tomcat 中 run/debug 的时候 ,修改某一个 java 文件时,tomcat 并不能将此文件的修改 实时编译 并反映到运行的项目中去。JRebel 就可以解决在项目运行状态run/debug 状态下任意修改 java 文件并动态反馈到运行的项目中。

或许你说你可以这样干,修改 server.xml 的配置。

<pre><code>
<Context path="/helloapp" docBase="helloapp" reloadable="true"/>
</code></pre>
但改动 java 代码后果是 tomcat 会重启整个项目。

直奔主题


一,JRebel 插件 获取与安装

1,JRebel 官网下载地址
https://zeroturnaround.com/software/jrebel/download/#!/free-trial

Paste_Image.png

注册可以获得 14 天的免费使用,注册过程此处省略 N 个字,注册下载相信大家都会。收费的问题下面会为大家解决,不用急。
下载好了如何安装?

Paste_Image.png

这里我就随便拿一个来演示本地安装了。


Paste_Image.png Paste_Image.png

2,或者直接在 IDEA 中操作获取 JRebel 插件

Paste_Image.png Paste_Image.png
安装完成,记得重启 IDEA 使刚才安装的插件生效。

二,激活

Paste_Image.png Paste_Image.png
http://idea.lanyus.com/ilanyu
lanyu19950316@gmail.com
在此感谢 IDEA开源社区 http://www.ideajava.org/ Paste_Image.png Paste_Image.png

三:使用

Paste_Image.png Paste_Image.png Paste_Image.png Paste_Image.png

配置完毕!


Paste_Image.png

启动项目之后
任意修改 java 代码,并 ctrl + s 保存 ,update classes and resources 一下。


Paste_Image.png

操作如下所示:


最后感谢观看本教程!


@auther:凌霄IT部落成员:赵君默
@ time :2016年4月16日 01:20:46

此致,今日分享完毕。

相关文章

网友评论

  • ad6e851ba0cb:我这样配置了,jrebel debug启动项目调试不进断点,有遇到过么?
  • MoonDan90:路过学习学习
  • 0539c44157b1:《【017今日分享】——IntelliJ IDEA - 热部署插件JRebel 安装使用教程- 简书》写的挺不错的,已经收藏了。

    源码解析:http://sina.lt/fdcQ


    8afe04d66ee7:恩恩

    还不错那
  • 江江的大猪:我想说,jrebel官网可以直接用facebook或者twitter账号注册,然后获取正版license...
    b09662c11467:获取的是14天试用,亲测
    龙圣贤:@我是凌霄 不会的可以看这个经验..http://jingyan.baidu.com/article/647f01159d32e77f2048a85d.html
    龙圣贤:是的. https://my.jrebel.com/
  • yang2yang:问个问题,好像idea有自带的热部署功能?只需要设置update classes....的那两个选项就可以了,是不是?如果是,那么是不是jrebel是不是就没有意义了?
    龙圣贤:@yang2yang jrebel可以解决, 原因没研究过, jrebel收费, 可以自己申请个注册码, 方法见评论区
    yang2yang:@龙圣贤 是的,测试过了update classes,对于新增的方法和参数修改都不生效,那么jrebel是可以解决这个问题,是吗?
    如果知道为什么jrebel能够做到idea做不到的这件事情,也请告知,谢谢啦
    龙圣贤:@yang2yang 据我所知, 新增方法或者修改方法参数是不生效的, 可以自行测试下
  • 嗷大彬彬:你好!激活过期了
  • 61ff07513c72:想问我是用Application 启动 tomcat 的这个在怎么进行配置呀?
  • Liwen:注册服务器不能用了 ,楼主能否给更新一个
  • 简kx:大哥你这是用的是什么IDE:frowning:
  • 潘神:楼主,我是用的idea,但是没有集成tomcat,用的bat启动的,请问怎么配置这个插件,是用remote么
    龙圣贤:@PL_05f8 只要把你本地的tomcat路径指定就可以了(https://github.com/judasn/IntelliJ-IDEA-Tutorial/blob/newMaster/eclipse-java-web-project-introduce.md#tomcat-配置)
  • 爱哭的笨小孩:wo jiu shuo 我怎么一直不能更新呢 原来是没有选 update classes ....
  • a1779e98a740:激活时一直报license server connection failed,这怎么整?
    e3aefb381106:https://github.com/judasn/IntelliJ-IDEA-Tutorial/blob/newMaster/jrebel-setup.md
    龙圣贤:@a1779e98a740 连接失败, 换注册服务器
  • ba776e35f288:怎么激活啊
    躺在家里干活:万分感谢
    龙圣贤:@ba776e35f288 50次失效,http://cloud.189.cn/t/aUrARfNNVBN3 (访问码:4755)
  • 肥朝:现在好像不能用了,楼主有其他解决方案吗
    肥朝:@我是凌霄 谢谢~~
    龙圣贤:@肥朝 最近没写博客,我用的是6.4旧版,晚点会给个链接教你们/给成品你们使用。
  • 543d4c3ae94c:表示6.5.2不能使用了
    龙圣贤:@大蒜头丶 最近没写博客,我用的是6.4旧版,晚点会给个链接教你们/给成品你们使用。
  • 88549278943c:现在的6.5.1是不能使用激活服务器还是,激活服务器挂了,求私信可用服务器或教下怎么搭建服务器
    龙圣贤:@是个罗卜 最近没写博客,我用的是6.4旧版,晚点会给个链接教你们/给成品你们使用。
  • 265e90b74be7:写的比较详细,不过太入门级了,官网的安装步骤更简洁具体!可以深入研究下 JRebel 远程 (Remote Server) 热部署再写,这是 JRebel 6.0之后社区主推的新特性。激活服务器可以自己搭,和谐掉JRebelPublicKey.class中的RSA公钥,用私钥重新生成jrebel.lic上传即可
    龙圣贤:@zoakerc 哈哈哈,看来自己搭个服务器很有必要性了,之前有相关的东西,没去搞,因为喜欢暴力破解,但是现在很多的验证都学聪明了,但是不用怕,有矛有盾嘛。 :relieved:
    265e90b74be7:@我是凌霄 JRebel分为两种版本:JRebel Legacy Agent 和 JRebel 6 Agent,正常情况下在IDEA中可以切换使用(也就是你会看到有两个jrebel.jar,但是其实这两个包并不是同一个东西)你指的替换jar包破解,可能只是和谐检验类或者替换RSA公钥,不过在6.0版本以后,JRebel Legacy Agent 加入了字节码自校验,也就是动态代码,强制改掉与验证相关的的类,启动时会出现NO LICENSE FOUND,JRebel 6 Agent和JRebel License Server则没有这一层保护机制,所以可以随便破解。你自己破解后尝试启动JRebel Legacy Agen就可以看到。这一层保护机制在另一个产品XRebel中也多处存在,你可以尝试破解xrebel.jar,与检验相关的class只要被替换,就会出现无法激活。最简单的破解方式就是通过激活服务器,ZeroTurnaround公司的动态代码保护机制代码位于某个class文件的const pool中,反编译jar包是看不见的。如果你没听懂,当我没说过:smile:说太多了怕又被发律师询问函……
    龙圣贤:@zoakerc 谢谢,因为我也是入门的,哈哈😄,这个我了解过,其实你说的.lic方式也是我破解的方式,但是考虑到新手懒得折腾,还不如直接给他注册服务器,后面会补lic的方式。(我用的需要替换jar包,如果你的不用,请告知)

本文标题:【017今日分享】——IntelliJ IDEA - 热部署插件

本文链接:https://www.haomeiwen.com/subject/lalolttx.html