最近在开发OSGi的应用,由于各个bundle在运行时使用各自的classloader,一些需要共享的库文件如libawt.so等不能被share,导致运行时报so已经被其他classloader加载的错误。其实只要在configuration的config.ini中加入osgi.java.profile.bootdelegation=override就可以让各个bundle使用统一的classloader来装载库文件。
在OSGi应用中使用统一classloader
最新推荐文章于 2021-11-04 14:50:40 发布
本文介绍了解决OSGi应用中bundle间共享库文件冲突的问题。通过配置config.ini中的osgi.java.profile.bootdelegation参数,使得多个bundle能够共用相同的classloader加载特定库文件,避免了因重复加载而导致的错误。
6765

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



