早晨上班在地跌里看到“阿里技术”公众号显示的“基于Java的模块化开发框架JarsLink”, 感觉很屌的样子,上午就迫不及待的看了源码。
JarsLink顾名思义是动态加载jar包, 跟阿里Dubbo的区别在于JarsLink依赖于宿主进程执行, Dubbo调用者/被调用者是多进程运行。
JarsLink的厉害之处在动态加载jar、还能卸载jar, 同样是Java语言,Android似乎不能动态卸载jar。
动态加载jar的核心是实例化一个上下文和ClassLoader, 从而实现类隔离。
ClassLoader默

本文探讨了阿里JarsLink框架的原理,它允许动态加载和卸载jar包,区别于Dubbo的多进程交互。JarsLink通过定制ClassLoader打破了Java的双亲委托机制,实现了类的重复加载。同时,它使用定时器检测模块版本变化以实现动态更新。然而,与Android不同,JarsLink目前无法实现Android上的动态卸载功能。
最低0.47元/天 解锁文章
168万+

被折叠的 条评论
为什么被折叠?



