【发布时间】:2010-09-08 09:04:11
【问题描述】:
背景:
- 我们正在使用 Maven 构建一个 Eclipse RCP 插件,并使用 Apache Felix 插件生成 MANIFEST.MF 文件。该插件是我们公司内部开发的更大 RCP 框架的一部分。
问题:
- Felix 插件在 MANIFEST.MF 文件中设置 Bundle-ManifestVersion=2。当我们使用这个清单文件时,我们的框架会抛出与 org.eclipse.runtime 相关的不同异常
- 当我们(手动)设置 Bundle-ManifestVersion=1 或从 MANIFEST.MF 文件中删除此条目时,此错误不再出现。
问题:
- Bundle-ManifestVersion=1 和 Bundle-ManifestVersion=2 有什么区别?
MANIFEST.MF 文件如下所示:
Manifest-Version: 1.0
Embed-Directory: lib
Bundle-ClassPath: .
Tool: Bnd-0.0.357
Bundle-Name: [... omitted ...]
Created-By: Apache Maven Bundle Plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.eclipse.core.runtime, [... omitted ...]
Build-Jdk: 1.6.0_21
Bundle-Version: 1.0.2
Bnd-LastModified: 1283847218240
Embed-Transitive: false
Bundle-ManifestVersion: 2
Import-Package: [... omitted ...]
Bundle-SymbolicName: [... omitted ...]`
【问题讨论】:
标签: java eclipse eclipse-plugin eclipse-rcp manifest