Bnd Import-Package具有重复版本

时间:2013-11-05 16:46:46

标签: java manifest bnd

我想知道可以和2.1.0生成清单在哪里 导入 - 包:我们有两个名称相同但版本不同的软件包。是吗 可能并且在这个行动中有意义吗? Import-Package: 'com.sample.logger;version="1.0.0",com.sample.logger;version="[2,3)"'

1 个答案:

答案 0 :(得分:2)

如果有可能,您的程序如何决定使用哪个包?此外,您的示例中的版本范围是不同的,基本上您需要com.sample.logger包的版本等于1.0.0 大于或等于2 同时少于3个。

然而,有可能和有效的是让多个bundle在不同版本中导出相同的包,比如1.2.3和2.0.0。需要此软件包的另一个软件包可以在其Import-Package语句中定义所需的确切版本(或当然的版本范围)。像这样,OSGi框架可以确保捆绑之间的连线是正确的。

就像这样,例如,您可以同时使用两个旧版本的捆绑包和一个较新的捆绑版本(没有任何问题)(对于像'flat'类路径一样你永远不会做的事情在非OSGi java)。

也许这就是你的意思?