Jvm 重复加载同一个类的结果会怎么样?

09-06-03 ofbiz
如题。。。 ,就像 hot deploy 一样,如果一个类修改了,我想让 jvm 重新加载,怎么处理,会与之前加载过的类冲突吗?

[该贴被ofbiz于2009-06-03 14:17修改过]

ofbiz
2009-06-04 09:48
晕,竟然没人回,ClassLoader 是 server 自定义的加载器,它们是只加载修改过的类,还是全部加载的?

beepbug
2009-06-04 18:38
我看Java书里说,类是第一次被使用时才加载到内存。

你说类已经被加载,是不是说类已被使用?而此时你修改了类文件?想让JVM再加载一次,以刷新内存里的映象?

有这样的业务需求嘛?

ofbiz
2009-06-05 09:12
这个不是工作上的,是我自己这样想的

yellowcat
2009-06-06 09:37
可以,不过要先卸载,具体卸载的方法是

1.把自定义类加载器的对象=null

2.把这个类加载器的加载的所有Class对象=null

3.把所有Class对象用newInstance()方法生成的对象=null

这样虚拟机就卸载了你通过自定义类加载器加载的类了

猜你喜欢
2Go 1 2 下一页