【发布时间】:2013-09-01 11:59:01
【问题描述】:
我使用 maven-bundle-plugin 创建 OSGi 合规性 jar。它生成预期的 OSGi 清单,除了 Import-Service 和 Export-Service。
根据http://wiki.osgi.org/wiki/Import-Service,不推荐使用 Import-Service。难怪我未能以分布式结构模式(集群)启动消费者捆绑包。捆绑包的清单包含导致它等待(宽限期)的 Import-Service 条目。当我手动删除该条目时,它开始完美。
那么,如何配置 maven-bundle-plugin 从它生成的 JAR 中排除 Import-Service 和 Export-Service?如果必须手动删除条目,真的很麻烦。
谢谢
【问题讨论】:
-
我不明白...这些标头只有在 POM 中明确指定时才会出现在您生成的清单中,例如
<Export-Service>...</Export-Service>。所以只需删除这些条目... -
您应该尝试使用 2.3.7 版本。我什至添加了空的
以防止进入。很遗憾,它失败了。 -
我是bnd的开发者之一。我知道没有任何版本的 bnd 会自动添加此标头。所以我很好奇它可能来自哪里。
-
@NeilBartlett,我在 bundle-plugin 的 2.3.7 版中看到了同样的问题。 Import-Service 和 Export-Service 会自动添加到 header 中。
-
@mhshams 2.3.7 版的 maven-bundle-plugin 已经有两年多了。但我仍然不知道有任何版本会自动添加 Import/Export-Service,而无需在 POM 或祖先 POM 中明确指定。