JRebel实现热部署

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LeonWang_Fly/article/details/50789808

web项目开发中,我们经常因为修改java源文件而重新启动服务,这将导致大量的时间耗费,造成开发效率的降低,尤其项目久了分分钟无法完成启动,虽然tomocat、jetty等扬言可以热部署,然并卵,修改一下方法中的逻辑还可以,如果新增方法则需要重启服务才行,远不如jetty这样直接对jvm进行代理,不论你是修改方法中的代码逻辑还是新增一个方法甚至新增一个类,只要修改过的为java文件,jrebel会对其进行编译并加载不需要重启服务器(亲测),so nice。。。
点击JReble官网查看更多

安装

我是按照官网知道进行在线安装的,在线安装版本可以试用15天,通过分享到脸书或者推特的方式可以试用一年,那么。。。要翻墙的)当然应该也有破解版在线安装,没研究。
地址http://www.zeroturnaround.com/update-site
不知道MyEclipse怎么在线安装请参考:
http://blog.csdn.net/leonwang_fly/article/details/50732353
根据你的IDE选择合适的版本安装
这里写图片描述
安装完成你会发现多了很多关于JRebel的东东,比如
这里写图片描述

使用

1. 普通web项目使用

在tomcat、或者jetty服务器的选项中你会发现有【Enable JReble agent】选项,勾选此项那么当你使用该服务器时在修改了java代码后就无须重启服务了,不过你需要勾选Project->Build Automatically,这样每次保存java代码都会对其进行编译并被重新加载
这里写图片描述

2. Maven项目中使用

如果是maven项目,你可能需要通过maven命令运行,那么,它也是可以滴。点击项目右键->Run as如下
这里写图片描述
勾选Enable JRebel agent,点击左侧的JRE选项你会发现启动参数增加了JReble的配置,你可能还需要通过右击项目->JReble->add JReble Nature,你会发现在项目的源文件根目录中增加rebel.xml配置,另外你同样需要确保你勾选了Project->Build Automatically。
这里写图片描述
如果你用的服务器没有设置代码变化时自动重启服务那么现在你已经可以美美的开发了。。。否则你首先需要关闭你的服务的热部署策略

本人项目中用的maven-jetty-plugin 6.1.10,重启配置,测试完不起作用,服务仍然重启,后来经查是该版本不支持所致,必须使用7.0以上版本,调整为7.0.0pre3后没问题了。

<configuration>
<scanIntervalSeconds>0</scanIntervalSeconds>
<daemon>true</daemon>
</configuration>

猜你喜欢

转载自blog.csdn.net/LeonWang_Fly/article/details/50789808