检查文件是否是OSGi捆绑包(并查找捆绑包名称),而不将其安装在OSGi框架中

检查文件是否是OSGi捆绑包(并查找捆绑包名称),而不将其安装在OSGi框架中,osgi,Osgi,可能吗?或者我必须尝试安装它吗?您可以在*meta inf/manifest.m*f jar文件中检查Bundle名称或Bunde XXX属性主机。安装Bundle时,Bundle id由框架分配。因此,只有已安装的捆绑包才有捆绑包id。我假设您正在谈论OSGi版本4,因为在OSGi版本3和更早版本中,任何有效的JAR文件也是有效的OSGi捆绑包 只需使用Java.util.JAR包中的标准JavaAPI读取JAR清单。有效R4捆绑包所需的最小标头为: Bundle版本:2 Bundle符号名

可能吗?或者我必须尝试安装它吗?

您可以在*meta inf/manifest.m*f jar文件中检查Bundle名称或Bunde XXX属性主机。

安装Bundle时,Bundle id由框架分配。因此,只有已安装的捆绑包才有捆绑包id。

我假设您正在谈论OSGi版本4,因为在OSGi版本3和更早版本中,任何有效的JAR文件也是有效的OSGi捆绑包

只需使用
Java.util.JAR
包中的标准JavaAPI读取JAR清单。有效R4捆绑包所需的最小标头为:

  • Bundle版本:2
  • Bundle符号名称:…

正如BJ所指出的,bundle的“id”是在安装时分配的,但许多人认为“id”实际上是bundle的符号名。

啊,这只是Eclipse误用术语而已。我是说你的名字。