我尝试使用maven-bundle-plugin(使用BND)打包OSGI包。
为了正常运行,bundle必须在开发期间导入一个不在类路径中的包(因为对象引用将作为“Class”引用传递给bundle方法)。
我无法在pom.xml或* .bnd文件中配置“Import-Package”声明,以便packe将包含在MANIFEST的OSGI Import-Package部分中。我虽然
Import-Package: de.foo.bar,*
应该完成这项工作,但由于de.foo.bar不在类路径中(或者最好不在代码中声明为导入),因此不会将其带到MANIFEST。
有人知道如何强制在OSGi Import-Package MANIFEST声明中提供包。
谢谢和问候 克劳斯
答案 0 :(得分:3)
我终于找到了解决方案
Import-Package: de.foo.bar;resolution:=optional,*
将“de.foo.bar”放在捆绑MANIFEST.MF的“Import-Package”声明中,即使捆绑包代码未导入包。