我正在使用 maven (maven-bundle-plugin) 和 apache karaf 进行 osgi bundle 开发的第一步。我的问题是:如何导入另一个捆绑包的包?
如果我有两个捆绑包 A 和 B。假设捆绑包 A 导出一个包“package.from.bundle.A”。我可以在 Bundle A Project 的 pom.xml 中声明:
...
<instructions>
...
<Export-Package>
package.from.bundle.A*;version=${project.version}
</Export-Package>
<Import-Package>
*
</Import-Package>
</instructions>
...
但是我如何声明我想在 Bundle B 中使用该包?如果我只是在项目 B 的 pom 文件的 import-package 标记之间写包名,这不起作用...
...
<instructions>
...
<Export-Package>
</Export-Package>
<Import-Package>
package.from.bundle.A
</Import-Package>
</instructions>
...
maven 如何知道这个包与哪个捆绑项目相关?如何使用 maven 在我的包之间使用依赖项?
谢谢你