(该补丁的网址http://ssw.jku.at/dcevm/)
Hotswap 是一个允许在运行状态下无限制的修改加载类文件的Java虚拟机补丁。当前java虚拟机的动态加载机制只允许修改类的方法体,而打了hotswap补丁以后,可以增加,删除类属性,方法,甚至可以改变一个类的父类。
Hotswap补丁是基于GPL v2.0开源协议的。你可以通过windows,linux,mac os下载hotswap 补丁的源代码或者可执行文件。
该补丁不仅能打在java7上,且打到java 6上,也一样正常工作。
在windows 启动安装程序,在控制台输入:
> java -jar dcevm-0.2-win.jar
在Mac OS启动安装程序,终端输入:
$ sudo java -jar dcevm-0.2-mac.jar
在Mac OS启动安装程序,终端输入:
$ sudo java -jar dcevm-0.2-linux.jar
安装程序会替换掉java下 bin/client/jvm.dll 和 bin/server/jvm.dll ,并将以后的jvm.dll备份到相应目录下。还会将dcevm.jar 加到lib/ext/ 目录.
2、eclipse端的修改
eclipse.ini 文件里面最后加入:(这里面要把原有的部分去掉一些)
-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=64M
-XX:MaxPermSize=512M
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
-XX:+TraceClassLoading
-XX:+TraceClassUnloading
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
-verbose:gc
-Xloggc:gc.log
重启一下eclipse看是否可以正常启动,这样的就配置完成了。
1、在你的web程序下,debug状态启动tomcat。(注意在要debug状态下 )
当你的程序正常运行后,要你想在改动的地方java代码,更改下,再重新刷下页面就明白了。(如果还是不成功,可以和我交流下)