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. 主机名/etc/hosts文件的作用

    1,/etc/hosts,主机名ip配置文件. # Do not remove the following line, or various programs # that require netwo ...

  2. Linux下的各类文件

    .a文件是静态链接库文件.所谓静态链接是指把要调用的函数或者过程链接到可执行文件中,成为可执行文件的一部分.当多个程序都调用相同函数时,内存中就会存在这个函数的多个拷贝,这样就浪费了宝贵的内存资源.. ...

  3. TCP可靠传输和拥塞控制

    1.TCP的可靠传输 tcp的可靠传输主要靠 来自接收方的确认报文 和 超时重传. 发出报文,计时器开始计时,在规定超时时间内未收到确认报文则重新发送. 注意:发送报文都留一个副本,如果收到确认报文就 ...

  4. docvalue and fielddata

    大部分字段类型默认被索引的(inverted index),可以被搜索search: 哪个文档有这个词sort&aggregations: look up the document and f ...

  5. IEnumerable的几个简单用法

    咋一看到IEnumerable这个接口,我们可能会觉得很神奇,在一般的编程时,基本上我们是想不到去用它的,可是,俗话说得好,存在便是道理,那么,它对我们来说,能够带来哪些奇妙的事情呢? 要想弄懂它,我 ...

  6. 对于JAVA多线程卖票小程序的理解

    昨天把多线程重新看了一遍,发现自己还是有许多需要理解的地方,现在写一篇总结. 一:利用继承Thread类会出现的问题: public class SellTicketsThread extends T ...

  7. google的面试题(三维动态规划的范例)——(87)Scramble String

    转:http://www.cnblogs.com/easonliu/p/3696135.html 分析:这个问题是google的面试题.由于一个字符串有很多种二叉表示法,貌似很难判断两个字符串是否可以 ...

  8. 【转】关于Vue打包的一个要注意的地方

    https://www.jianshu.com/p/4118e76d684a 我们用vue-cli(脚手架)自动生成项目,然后用webpack来打包,往往会遇到这种问题: 1.直接根据README.m ...

  9. java 可变参数讲解

    java5中新增了可变参数,这个可变参数和C语言中的用法是差不多,但实现起来却不一样. 下面我们一起来看看吧. 其实可变参数就是一个数组 class A{ public void func(int.. ...

  10. linux关闭地址空间随机化(ASLR)

    转:http://www.xuebuyuan.com/1571079.html 确认ASLR是否已经被打开,"2"表示已经打开 shanks@shanks-ubuntu:/home ...