我有一个eclipse / osgi插件,我需要将其导出为可部署的功能。我的插件在Java 1.7中工作,但是当它通过eclipse导出时,我得到错误,说1.6中不支持某些东西。如何指定导出需要使用java 1.7(eclipse构建并使用1.7中的所有其他内容)
答案 0 :(得分:3)
@TheDog:我知道在安装插件之前需要Eclipse在Java 7上运行。在OSGi的说法中,这是执行环境。
在OSGi的4.3版后,您可以使用Require-Capability标题:
Require-Capability: osgi.ee; filter="(&(|(osgi.ee=J2SE)(osgi.ee=JavaSE))(version>=1.7))"
每个OSGi框架都为其支持的环境提供了“osgi.ee”功能,在您的情况下为1.7。
在环境成为功能之前,有一个特殊的清单头,可确保您只能在Java 7环境中安装捆绑包:
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
所有框架仍支持此标头。