介绍
Jrebel是一款JavaEE开发工具,它可以帮助开发者在不重启服务器的情况下,使代码即时生效、即时部署,从而节约因开发过程中代码改动而进行的服务器重启。可以说是Java开发中的必备插件。
为什么要用Jrebel
1、节约时间
以我为例从事电信行业系统开发,由于项目工程较大,改动代码后进行本地Tomcat重启需要4-5分钟。这意味着即使改动了一行代码,如果我想确认效果,必须在五分钟之后才能知道。很多情况是等了五分钟重启完成后,才发现一个被自己疏漏的小问题,这时候改动后还需要等五分钟来验证效果。这对于希望节约时间追求效率的人来说是难以忍受的。拥有Jrebel则可以即时修改生效,热部署花费时间仅1-2s。
2、更高的代码测试覆盖
我已经好几次发现有一些开发人员对于代码测试通过与否是以Eclipse或Intellij测试工具条跑绿为准则。出现这种问题一者和开发人员的责任心有关系,二者是因为要完成更高的代码测试覆盖,成本非常高昂。一次Junit测试接口需要3-4分钟左右(以我目前项目为例),接口的逻辑分支极其多的情况下,你不得不在测试、发现BUG、改BUG、重启服务器、验证效果之间来回花费非常多的时间。用Jrebel你甚至可以边改边测,你也可以插入一段临时代码以控制程序走入的逻辑分支,你也可以屏蔽掉一些校验以让程序能继续测试某段逻辑块,这些都不需要任何时间。Jrebel提升了我代码的覆盖率,缺陷也明显减少。
安装
File>Settings>Plugins>Browse repositories 搜索Jrebel for Intellij,右侧下载安装。重启生效。完成后你将能在Settings中看到插件的一些设置。
注册
Jrebel插件提供14天试用期,试用期结束就无法使用,但你也不需要费劲心力寻找盗版。Jrebel提供免费长期使用的方式。即通过facebook||Twitter分享方式获得,前提是你需要能够连接外网&&拥有Facebook||Twitter账号。
注册方式见:
https://blog.csdn.net/xiangxueping80/article/details/44487045/
使用
按照以上方式安装完成之后,在IntellIj右上会多出两个按钮,左侧那个为普通运行模式,右侧为Debug模式。这两者的使用和Intellij自带两者模式一致,唯一的区别就是如果你使用这两个模式启动本地服务器,代码将可以进行热部署。
![](https://img.haomeiwen.com/i10161886/b64c930085fee2d0.png)
注意
一、Jrebel热部署将会需要更多的内存,因此如果在出现内存溢出时,请在Tomcat设置中将VM options框中填入以下(内容根据自己需要调整):
-XX:PermSize=512M -XX:MaxPermSize=1024m -Dfile.encoding=GBK
![](https://img.haomeiwen.com/i10161886/b160edac7b84378c.png)
二、Jrebel无法对配置文件进行热部署,修改配置文件还是需要重启服务器,目前本人没有找到解决办法,如果有解决办法请分享一下。
(完)
网友评论