`

用jreloader不重启JVM动态重新加载改变的类

jvm 
阅读更多

事情的起源是,我们一个程序内置了一个REST服务的server(是Jersey的Grizzly),启动后,修改类文件,需要重启服务器才能让修改生效。
这时候,就想到要动态加载类了。

在JAVA的世界里面,类,不是动态加载的,除非你检测class的变化,去写classloader啦 。
当然,世界上还有很多苦逼JAVA程序员碰到这个问题,所以,他们发明了俩工具:
JRebel :http://zeroturnaround.com/software/jrebel/
jreloader: http://code.google.com/p/jreloader/

JRebel是商业软件,也有社区免费版,我解决这个问题用的是jreloader,因为?简单一点吧。

步骤:

1、下载jreloader,解压到某个地方(地址?上面有啦,哥)
2、配置运行的参数,加入jreloader需要的参数


 
3、运行程序
4、修改类,编译修改的类
这时,我们就看到jreloader起作用啦

最后,有一篇介绍jreloader的问题,你们也看看吧:

http://unmi.cc/jreloader-reload-class

  • 大小: 12.1 KB
  • 大小: 3.5 KB
1
2
分享到:
评论
2 楼 cavenfeng 2012-12-13  
杨白白 写道
哥。怎么运行程序??

只需要在java命令中加入参数(看第一个图):
java -noverify -javaagent:c:\jreloader-0.2\jreloader.jar -Djreloader.dirs=c:\project\target\classes com.foo.Main

具体看:http://code.google.com/p/jreloader/wiki/QuickStart
1 楼 杨白白 2012-12-13  
哥。怎么运行程序??

相关推荐

    Java类重加载工具 JReloader

    Java类重加载工具JReloader是一款专为Java开发者设计的实用工具,它允许开发者在运行时动态地重新加载修改过的类,从而极大地提高了开发效率,减少了应用重启的次数。这个特性对于快速迭代和调试代码特别有帮助,...

    热加载类工具

    动态重新加载改变的类而不用重启 JVM ,对于大型软件来说开发程序重启是非常耗时的,开发时新建类,在已有的类中添加方法是无法加载上的,大家应该经常碰到ECLIPSE中由于添加方法编译后弹出的警告,此时如果需要调试...

    java源码:Java类重加载工具 JReloader.zip

    Java 类重加载工具 JReloader 是一款用于在开发过程中快速、动态地重新加载 Java 类的实用工具,极大地提高了开发效率。这款工具的核心功能是避免在每次代码修改后都需要重启应用程序来观察更改效果,从而节省了大量...

    基于Java的类重加载工具 JReloader.zip

    JReloader是一个工具,它允许开发者在不重启应用的情况下,自动检测并重新加载Java类,从而加速开发流程。 JReloader的核心功能是其类加载机制。在Java中,类是由ClassLoader负责加载的。通常,当一个类被加载后,...

    jreloader 下载 使用教程

    JReloader是一款强大的Java开发辅助工具,它允许开发者在不重启Java虚拟机(JVM)的情况下实时重新加载类文件,极大地提高了开发效率。尤其对于那些频繁修改代码并需要立即查看效果的项目,JReloader的价值更为凸显...

    jreloader-0.4

    JReloader是一个高效、便捷的工具,它允许开发者在不重启Java虚拟机(JVM)的情况下,实现类文件的动态重新加载,极大地提高了开发效率。 JReloader的核心功能在于它的类文件监控和热更新机制。当开发者修改了某个...

    jreloader jar包 和使用方法

    Java运行时重加载器(JreLoader)是一个实用工具,主要设计用于开发环境中,它允许开发者在不重启Java应用程序的情况下动态地更新类。这个特性极大地提高了开发效率,因为无需每次修改代码后都重新启动服务器。在...

    Java reloader

    Java 类重新加载器(Java Reloader)是一种工具或技术,它允许开发者在不重启Java虚拟机(JVM)的情况下更新和重新加载Java类。这对于快速迭代开发和调试过程非常有用,因为它极大地提高了开发效率,避免了每次修改...

    JAVA上百实例源码以及开源项目源代码

    得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥验证签名结果,使用公钥初始化签名对象,用于...

    java开源包8

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包1

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包11

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包2

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包3

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包6

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包5

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包10

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

    java开源包4

    JReloader 是一个用来重新加载class文件而无需重启JVM的工具。 PHPJava Bridge php调用java类 Java批量作业执行框架 MyBatchFramework MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的...

Global site tag (gtag.js) - Google Analytics