当我有两个使用相同jar的OSGi包时,他们是否需要在每个包中使用这个jar或者一个就足够了?

Flo*_*anB 2 java osgi bundle

例如,捆绑"A"和捆绑"B"正在使用log4j.我们只能有一个log4j吗?或者是否有必要在每个包中包含log4j?

Dev*_*Dev 5

如果捆绑'A'正在导出log4j包而捆绑'B'导入它们,则捆绑'B'可以使用捆绑'A'中的log4j.

实际上更好的想法是使用log4j包(log4j 1.2.16是一个OSGi兼容的版本),然后让'A'和'B'导入它.您可以检查我链接的log4j.jar,看看它是否有OSGi清单条目.