对于OSGi包,我们可以使用Required-Bundle或Imported-Package添加依赖项。现在我有以下情况:
捆绑包A和捆绑包B都导出相同的包,但捆绑包B的版本更高,如:
bundle A:
Exported Packages:
xxx.a,
xxx.b,
xxx.c
bundle B:
Exported Packages:
xxx.a; version="5.0.0",
xxx.b; version="5.0.0",
xxx.c; version="5.0.0"
bundle C依赖于打包a,b,c,所以它在Required-Bundle列表中添加了A,比如
bundle C:
Required Bundles:
A
假设捆绑A和B都在框架中解析。那么在解析bundle C时,哪些包/类是由C加载的,A或B中的类是什么?我想是A.我是对的吗?