Eclipse-plugin-dev:如何获取当前的bundle版本?

时间:2013-10-09 02:26:22

标签: java osgi eclipse-plugin manifest.mf

在Eclipse插件开发中:如何获取当前的bundle版本?

只是在Manifest.MF

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Nodeclipse
Bundle-SymbolicName: org.nodeclipse.ui;singleton:=true
Bundle-Version: 0.6.0.qualifier
Bundle-Activator: org.nodeclipse.ui.Activator
Require-Bundle: org.eclipse.ui,

然而,Java只有方法才能查看Bundle Implementation版本 getClass().getPackage().getImplementationVersion();

2 个答案:

答案 0 :(得分:22)

以更多的OSGi方式,无需知道您的姓名和官方标准方式:

 Version version = FrameworkUtil.getBundle(getClass()).getVersion();

请注意,您获得的捆绑包版本来自加载它的捆绑包。所以不要把它放在另一个包中的便利库中!

答案 1 :(得分:13)

在插件中,您可以使用:

Bundle bundle = Platform.getBundle("org.nodeeclipse.ui");
Version version = bundle.getVersion();

VersiongetMajorgetMinorgetMicrogetQualifier方法。

Platformorg.eclipse.core.runtime.Platform