借助JRebel使Tomcat支持热部署
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的属性,按下图勾选相应属性即可。
部署后的动态加载:
配置很简单,只需要设置两个环境变量即可,
- 环境变量名:
- JAVA_OPTS
- 环境变量值:
- -javaagent:%REBEL_HOME%\jrebel.jar -Drebel.hibernate_plugin=true -Drebel.spring_plugin=true -Drebel.struts2_plugin=true
- 环境变量名:
- REBEL_HOME
- 环境变量值:
- D:\jrebel-5.6.3-crack(这个路径就是你JRebel的解压目录)
接下来运行Tomcat的startu.bat,在开头会出现以下信息:
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel: #############################################################
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel: JRebel 5.6.3 (201409050929)
- 2014-10-08 21:22:08 JRebel: (c) Copyright ZeroTurnaround OU, Estonia, Tartu.
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel: Over the last 2 days JRebel prevented
- 2014-10-08 21:22:08 JRebel: at least 43 redeploys/restarts saving you about 1.7 hours.
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel: This product is licensed to anonymous-user
- 2014-10-08 21:22:08 JRebel: for unlimited number of developer seats on site.
- 2014-10-08 21:22:08 JRebel: ####### Cracked by anonymous-user, For FUN! Unlimited! Enjoy! ######
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel: The following plugins are disabled at the moment:
- 2014-10-08 21:22:08 JRebel: * Axis2 WAS plugin (set -Drebel.axis2_was_plugin=true to enable)
- 2014-10-08 21:22:08 JRebel:
- 2014-10-08 21:22:08 JRebel: #############################################################
- 2014-10-08 21:22:08 JRebel:
ok这样表示已经配置成功了,如果环境变量不起作用,可以在Tomcat的startup.bat的开头加入如下代码:
- @echo off
- set JAVA_OPTS=-javaagent:[path/to/]jrebel.jar %JAVA_OPTS%
- call "%~dp0\catalina.bat" %*
[path/to/]为你的JRebel解压目录。
好了,这样就都配置好了,快快感受一下吧!
附JRebel破解版下载地址:
jrebel-5.6.3-crack 破解版
借助JRebel使Tomcat支持热部署的更多相关文章
- 菜鸟教程之工具使用(四)——借助JRebel使Tomcat支持热部署
JRebel是一个J2EE热部署的工具.使用它可以减少浪费8-18%的开发时间在项目的构建和部署上.虽然Java也提供了HotSpot的JVM,但是如果你修改的类中有方法名称变动的话,HotSpot就 ...
- IntelliJ IDEA JRebel Maven Tomcat 实现热部署
一,JRebel 插件 获取与安装 直接在 IDEA 中操作获取 JRebel 插件 Paste_Image.png Paste_Image.png 安装完成,记得重启 IDEA 使刚才安装的插件生效 ...
- eclipse 于 Tomcat于 热部署 project
eclipse在 Tomcat中热部署project 1.在eclipse中国安装一个tomcat插件:SysdeoEclipse Tomcat Launcher plugin(http://www. ...
- 转载:tomcat实现热部署的配置
tomcat实现热部署的配置 我们实现热部署后,自然就可以通过maven操作tomcat了,所以就需要maven取得操作tomcat的权限,现在这一步就是配置tomcat的可操作权限. 进入tom ...
- idea的tomcat实现热部署遇到的问题
选择Deployment的时候,要选择exploded结尾的,否则不支持热部署
- Intellij IDEA 安装和配置jrebel进行项目的热部署
Jrebel 先介绍一下jrebel,jrebel是可以热部署项目的一个工具,更改代码自动部署并不需要重启项目(在spring中的controller中,增加.修改方法都是可以进行热部署而不需要重启的 ...
- IDEA项目搭建五——使用JRebel插件实现IDEA热部署
使用IDEA开发时修改了html或js或java代码都需要编译启动浪费了很多时间,所以可以借助热部署插件实现自动编码,每次修改完代码保存后就可以刷新页面看效果很方便,热部署工具有很多在此只推荐JReb ...
- 【IDEA 2016】intellij idea tomcat jsp 热部署
刚开始用IDEA,落伍的我,只是觉得IDEA好看.可以换界面.想法如此的low. 真是不太会用啊,弄好了tomcat.程序启动竟然改动一下就要重启,JSP页面也一样. IDEA可以配置热部署,打开to ...
- 关于tomcat的热部署
在做java web开发时,常用的服务器就是tomcat了.如果tomcat不能实现热部署,那么恐怕每次更改文件进行发布就尤其费时了. 热部署定义:在未改变class文件的签名的前提下,文件的修改是不 ...
随机推荐
- 最小的Django应用
创建一个hello.py 内容如下: import sys from django.conf import settings # 设置 settings.configure( DEBUG = Tr ...
- LightOJ - 1297 Largest Box LightOJ(一元三次方程求极大值)
题目链接:https://vjudge.net/contest/28079#problem/K 题目大意:给你一个长为L,宽为W的纸片,四个角剪掉边长为x的正方形,如下图所示,然后折成一个无盖的纸盒, ...
- 洛谷P1634 禽兽的传染病 题解
题目传送门 最近都在刷红色的水题... 这道题因为是不断地传染,所以直接求幂次方就好啦... 但是一测样例WA了... 原来x初始需要加1... 提交评测WA了... 原来要开long long .. ...
- 【转】Android打印机--没有设备驱动sdk,自己实现USB打印功能
原文:http://blog.csdn.net/johnwcheung/article/details/71576833 Android下的设备调试,如果设备提供了驱动,按照厂家的驱动调试即可:设备未 ...
- Ubuntu16.4 修改静态ip地址
root@temple-102:~# ifconfig eno1 Link encap:Ethernet HWaddr 0c:c4:7a:e6:49:74 UP BROADCAST MULTICAST ...
- day5模块
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
- 小甲鱼Python笔记(上)
基于Python 3.4.3 一 二 三 四 基础 print 三版必须加括号,二版不用加 alt + n :上一条语句 alt + p :下一条语句 打印三条hello 没有大括号,用缩进来表示 ...
- [实战]MVC5+EF6+MySql企业网盘实战(14)——思考
写在前面 从上面更新编辑文件夹,就一直在思考一个问题,之前编辑文件夹名称,只是逻辑上的修改,但是保存的物理文件或者文件夹名称并没有进行修改,这样就导致一个问题,就是在文件或者文件夹修改名称后就会找不到 ...
- cordova 导致css中绝对定位top:0会被顶到视图之外
IOS7+ webview全屏导致状态栏悬浮在页面上 解决方案:打开 ios项目/classes/MainViewController.m,修改viewWillAppear方法 - (void)vie ...
- 遍历datatable的几种方法
方法一: DataTable dt = dataSet.Tables[]; ; i < dt.Rows.Count ; i++) { string strName = dt.Rows[i][&q ...