在Eclipse中配置动态加载Class的JVM插件--JavaRebel

  在第19届Jolt大奖中,JavaRebel荣获了生产力大奖,它由ZeroTurnaround公司推出。JavaRebel是一个JVM插件(-javaagent),能够即时重新加载Class,而不需要重新部署应用或者重启容器,以节约时间。

  JavaRebel下载地址为:http://www.zeroturnaround.com/javarebel/,需要注意的一点是JavaRebel需要License,免费下载的带有evaluation license,可以使用30天。

我们先来看下它支持的JVM有:(以下数据来自http://www.zeroturnaround.com/javarebel/网站)

  • Sun Java 1.4.x, 5.x, 6.x
  • JRockit JVM 8.1sp6 or later
  • JRockit JVM 9.x 1.5.0_06 or later
  • JRockit JVM 1.6.x
  • IBM J9 1.4.x, 5.x, 6.x
  • Apple MRJ 1.4.x, 5.x, 6.x

支持的容器:

  • IBM WebSphere 6.x
  • BEA Weblogic 8.x, 9.x, 10.x
  • GlassFish 2.x
  • Oracle OC4J 9.x, 10.x
  • Tomcat 4.x, 5.x, 6.x
  • JBoss 3.x, 4.x, 5.x
  • Jetty 5.x, 6.x, 7.x
  • Caucho Resin 3.0.x
  • Jonas 4.x
  • Equinox OSGi (including Eclipse plugins)
  • IntelliJ IDEA plugins
  • Atlassian Confluence plugins

JavaRebel能与下面的框架无缝集成:

  • Java EE
  • Java standalone apps
  • Groovy
  • Spring
  • Struts2
  • Google Guice
  • Tapestry 4

  现在大家在开发Web程序时基本上都在使用Eclipse的作为开发工具,JavaRebel支持Eclipse WTP,但是配置稍有点复杂,下面就来介绍下如何配置。

  首先将下载的javarebel-2.0.zip解压到本地目录,拷贝javarebel.jar到C:/(可为其它目录)以备后用。

  下面以Tomcat 6.0为例介绍如何配置服务器,启动Eclipse,选择Run --> Run Configurations,如下图所示:

Run Configurations

 

  选择(x)=Arguments在VM arguments框内容的最后加入下列参数(注意修改javarebel.jar的存放路径):

  -noverify -javaagent:c:/javarebel.jar

Config VM arguments

 

Apply配置,并点击“运行”按钮,在Console中可以看到有如下输出,则表明JavaRebel在WTP中已经安装成功了:

 Console output

 

  然后,在Server视图中双击服务器名称,打开Tomcat 6.0服务器属性设置页,设置Publishing方式为Automatically publish when resources change,如下图:

Publishing

 

最后,选择Modules页,关闭所有Module的Auto Reload,如下图:

Disabled Auto Reload

 

  至此,所有配置完成,重新启动Tomcat服务器,修改class后,Tomcat不会进行Publishing,但结果会发生变化。大家去试试吧~~

  随便说句,JavaRebel也支持对像EAR/WAR/JAR等文件的class动态加载,有兴趣的读者可以去参考文档。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值