OSGi 开发中的包管理与动态加载技术解析
1. 避免拆分包问题
在 Java 开发中,包的管理是模块化的重要部分。 Import - Package 和 Export - Package 清单头以 Java 包为粒度工作,而 Require - Bundle 清单头则以捆绑包为粒度建立代码依赖。
1.1 Require - Bundle 的使用示例
假设有捆绑包 B2 导出包 p 和 q,并从捆绑包 B3 导入包 r。捆绑包 B1 的清单文件如下:
Bundle - SymbolicName: B1
Require - Bundle: B2; visibility:=reexport
由于 B1 没有 Import - Package 头,且 Require - Bundle 的 visibility 参数设置为 reexport ,B1 可以看到包 p、q 和 r。若 visibility 参数移除或设置为 private ,B1 只能看到包 p 和 q。
1.2 Require - Bundle 的问题
使用 Require - Bundle 会带来
超级会员免费看
订阅专栏 解锁全文
863

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



