Eclipse OSGi包重新获得另一个bundle的片段

这可能是一个简单的问题,但有时让我困惑。

我正在开发一个依赖谷歌guice的OSGi包。 Google guice有一个主要的捆绑和几个片段,如辅助注入片段。 在我的包中,我使用了辅助注入片段和从该片段导出的类。

但是在Eclipse中,我只能在另一个bundel(在本例中为guice包)上设置bundle依赖,而不是直接在片段上(辅助注入),因此Eclipse抱怨无法找到从片段中导出的类。

如何依赖bundle的片段?

对片段的导出包使用Import-Package依赖关系。

实际上,您应该对所有依赖项使用Import-Package ,并尽可能避免使用Require-Bundle

除了向Import-Package添加所需Import-Package ,您可能还需要在清单中添加Eclipse-ExtensibleAPI: true以防止PDE中出现未解决的依赖性错误。