- Class.forName和ClassLoader.loadClass - 简书
- Eclipse安装热部署热加载插件JRebel(免费版————idea也可用) - that summer - CSDN博客
- Eclipse中使用JRebel实现项目热部署(Maven插件版) - LinWenLi - 博客园
- java程序如何实现hotswap - 简书
- Springloaded使用方法 - 唐震宇的博客 - CSDN博客
- Tomcat热部署的实现原理 - FreeMan。 - 博客园
- 揭秘Java热部署原理及JRebel(Hotcode)的实现原理 - dai.sp - 博客园
- 使用javassist运行时动态重新加载java类及其他替换选择 - weixin_34355881的博客 - CSDN博客
- 探秘 Java 热部署二(Java agent premain) - 莫那-鲁道 - 博客园
- 探秘 Java 热部署三(Java agent agentmain) - 莫那-鲁道 - 博客园
- Java_java动态编译整个项目,解决jar包找不到问题
- 慎用动态编译
总结
classLoad 只能热加载反射运行的类。
javassist的toClass()可以实现。new 级别的热替换。但是必须是在第一次对Class加载之前。
所以可以得到结论,如果类加载到jvm了,再想替换new级别的操作就困难了。
a