JRebel是一个J2EE热部署的工具。使用它可以减少浪费8-18%的开发时间在项目的构建和部署上。虽然Java也提供了HotSpot的JVM,但是如果你修改的类中有方法名称变动的话,HotSpot就无能为力了,必须要重要启动应用服务器。JRebel则可以动态监视class文件及配置文件,如果有文件更新,被调用时就会被JRebel重新加载,达到热部署的目的。

JRebel不仅可以在开发阶段实现热部署来提高开发效率,在项目部署投入使用以后也支持动态的加载,从而可以帮助程序完成一些特殊的功能,让程序变得更加灵活。下面我们一起来看看它到底怎么用吧。

开发阶段:

JRebel支持Eclipse、MyEclipse、IntelliJ、NetBeans等众多IDE,我们以Eclipse为例,在Eclipse中想要使用JRebel,我们需要安装一个插件,可以在Eclipse Marketplace中搜索安装,也可以使用install new software通过URL来安装。url为:http://www.zeroturnaround.com/update-site/。具体怎么安装插件就不赘述了,不知道的自己百度一下。

安装完插件,Eclipse重启,然后按照下面的步骤配置即可:

Window——>Preferences——>JRebel

点击“JRebel Config Center”按图勾选,并添加自己下载的JRebel的jar包以及lic文件。

最后配置Tomcat的属性,按下图勾选相应属性即可。

部署后的动态加载:

配置很简单,只需要设置两个环境变量即可,

  1. 环境变量名:
  2. JAVA_OPTS
  3. 环境变量值:
  4. -javaagent:%REBEL_HOME%\jrebel.jar -Drebel.hibernate_plugin=true -Drebel.spring_plugin=true -Drebel.struts2_plugin=true
  5. 环境变量名:
  6. REBEL_HOME
  7. 环境变量值:
  8. D:\jrebel-5.6.3-crack(这个路径就是你JRebel的解压目录)

接下来运行Tomcat的startu.bat,在开头会出现以下信息:

  1. 2014-10-08 21:22:08 JRebel:
  2. 2014-10-08 21:22:08 JRebel: #############################################################
  3. 2014-10-08 21:22:08 JRebel:
  4. 2014-10-08 21:22:08 JRebel:  JRebel 5.6.3 (201409050929)
  5. 2014-10-08 21:22:08 JRebel:  (c) Copyright ZeroTurnaround OU, Estonia, Tartu.
  6. 2014-10-08 21:22:08 JRebel:
  7. 2014-10-08 21:22:08 JRebel:  Over the last 2 days JRebel prevented
  8. 2014-10-08 21:22:08 JRebel:  at least 43 redeploys/restarts saving you about 1.7 hours.
  9. 2014-10-08 21:22:08 JRebel:
  10. 2014-10-08 21:22:08 JRebel:  This product is licensed to anonymous-user
  11. 2014-10-08 21:22:08 JRebel:  for unlimited number of developer seats on site.
  12. 2014-10-08 21:22:08 JRebel:  ####### Cracked by anonymous-user, For FUN! Unlimited! Enjoy! ######
  13. 2014-10-08 21:22:08 JRebel:
  14. 2014-10-08 21:22:08 JRebel:
  15. 2014-10-08 21:22:08 JRebel:
  16. 2014-10-08 21:22:08 JRebel:  The following plugins are disabled at the moment:
  17. 2014-10-08 21:22:08 JRebel:  * Axis2 WAS plugin (set -Drebel.axis2_was_plugin=true to enable)
  18. 2014-10-08 21:22:08 JRebel:
  19. 2014-10-08 21:22:08 JRebel: #############################################################
  20. 2014-10-08 21:22:08 JRebel:

ok这样表示已经配置成功了,如果环境变量不起作用,可以在Tomcat的startup.bat的开头加入如下代码:

  1. @echo off
  2. set JAVA_OPTS=-javaagent:[path/to/]jrebel.jar %JAVA_OPTS%
  3. call "%~dp0\catalina.bat" %*

[path/to/]为你的JRebel解压目录。

好了,这样就都配置好了,快快感受一下吧!

附JRebel破解版下载地址:

jrebel-5.6.3-crack 破解版

借助JRebel使Tomcat支持热部署的更多相关文章

  1. 菜鸟教程之工具使用(四)——借助JRebel使Tomcat支持热部署

    JRebel是一个J2EE热部署的工具.使用它可以减少浪费8-18%的开发时间在项目的构建和部署上.虽然Java也提供了HotSpot的JVM,但是如果你修改的类中有方法名称变动的话,HotSpot就 ...

  2. IntelliJ IDEA JRebel Maven Tomcat 实现热部署

    一,JRebel 插件 获取与安装 直接在 IDEA 中操作获取 JRebel 插件 Paste_Image.png Paste_Image.png 安装完成,记得重启 IDEA 使刚才安装的插件生效 ...

  3. eclipse 于 Tomcat于 热部署 project

    eclipse在 Tomcat中热部署project 1.在eclipse中国安装一个tomcat插件:SysdeoEclipse Tomcat Launcher plugin(http://www. ...

  4. 转载:tomcat实现热部署的配置

    tomcat实现热部署的配置   我们实现热部署后,自然就可以通过maven操作tomcat了,所以就需要maven取得操作tomcat的权限,现在这一步就是配置tomcat的可操作权限. 进入tom ...

  5. idea的tomcat实现热部署遇到的问题

    选择Deployment的时候,要选择exploded结尾的,否则不支持热部署

  6. Intellij IDEA 安装和配置jrebel进行项目的热部署

    Jrebel 先介绍一下jrebel,jrebel是可以热部署项目的一个工具,更改代码自动部署并不需要重启项目(在spring中的controller中,增加.修改方法都是可以进行热部署而不需要重启的 ...

  7. IDEA项目搭建五——使用JRebel插件实现IDEA热部署

    使用IDEA开发时修改了html或js或java代码都需要编译启动浪费了很多时间,所以可以借助热部署插件实现自动编码,每次修改完代码保存后就可以刷新页面看效果很方便,热部署工具有很多在此只推荐JReb ...

  8. 【IDEA 2016】intellij idea tomcat jsp 热部署

    刚开始用IDEA,落伍的我,只是觉得IDEA好看.可以换界面.想法如此的low. 真是不太会用啊,弄好了tomcat.程序启动竟然改动一下就要重启,JSP页面也一样. IDEA可以配置热部署,打开to ...

  9. 关于tomcat的热部署

    在做java web开发时,常用的服务器就是tomcat了.如果tomcat不能实现热部署,那么恐怕每次更改文件进行发布就尤其费时了. 热部署定义:在未改变class文件的签名的前提下,文件的修改是不 ...

随机推荐

  1. 第一天开始使用Oracle

    上半年虽然已经学习了Oracle,但是基本上实验课都没怎么实践过,感觉自己之前过得太水了! 在我的印象里,Oracle 的难度相当于工程师的建设一个亚洲最大的医院一样,也如医生的99%失败率的手术: ...

  2. ubuntu查看mysql版本的几种方法

    ubuntu查看mysql版本的几种方法 mysql 1:在终端下:mysql -V(大写) //代码 $ mysql -V mysql Ver 14.14 Distrib 5.5.46, for d ...

  3. Error -27796: Failed to connect to server "ip地址": [10060] Connection timed out

    如果出现Error -27796: Failed to connect to server "ip地址": [10060] Connection timed out 这样的错误,如 ...

  4. fedroa20 没法开启ntpd服务器

    1现象:ntpd老是没法开启,ntpd -d显示有个进程占用123端口. [root@vd13crmtb01 ~]# systemctl enable ntpd.service         //开 ...

  5. 清除(设置)eclipse的workspace记录

    在eclipse文件夹中找到这个文件即可: //eclipse/configuration/.settings/org.eclipse.ui.ide.prefs 用记事本打开这个文件.如果你是第一次打 ...

  6. LoadRunner截取字符串操作

    LoadRunner截取字符串操作 在使用LoadRunner winsockets协议写脚本,遇到下面问题: 在接收到的查询数据库的结果中我要取红色部份用于下面的select recv buf60 ...

  7. thinkjs REST API的跨域设置

    用thinkjs也有一小段时间了,和其它国产框架一样,起初是处于观望态度.当然我最先的选择也不是thinkjs而是选的express,用到后面发现实现一个能让自己用着比较顺手的博客还是一件蛮困难或者说 ...

  8. QString 与中文问题

    原文请看:http://www.cnblogs.com/phoenixlaozhu/articles/2553180.html (更新:本文的姊妹篇Qt5与中文问题) 首先呢,声明一下,QString ...

  9. Es6懒加载

    const Login = resolve => require(['@/components/Login'], resolve) 注(当路由被访问的时候才加载这个组件)

  10. 如何对富文本编辑器(FCK Html Editor)的工具栏进行扩展?

    我们在项目开发过程中,会经常使用到富文本编辑器.GeneXus内置的富文本编辑器FCK Html Editor使用起来非常方便,只要将页面变量的控件类型(Control Type)选择为FCK Htm ...