我正在从Eclipse3.7.2版本中为equinox开发一些插件。不幸的是,我不能升级到最新的春分平台。所提供的春分平台没有在其清单中提供“Require: osgi.ee;filter="(&(osgi.ee=JavaSE)(version=1.8))”条目。因此,我不能在插件中使用" bundle -RequiredExecutionEnvironment: JavaSE-1.8“。根据答案Java 8 & Missing required capability Require-Capability: osgi.ee; filter="(&(osgi.ee=JavaSE)(version=1.8))",我使用的方法是”从bundle manifest中删除标头“,并成功编译并使用java 8功能。
我的问题是-这样解决缺失的功能安全吗?我在java 8上运行我以前的春分平台,所以java 8特性应该是可用的。即使我没有将Bundle-RequiredExecutionEnvironment指定为java 8,但整个开发和生产运行都是在java 8上,在我的插件中是否可以使用Java 8特性?或者Osgi平台限制osgi.ee平台是有原因的,我必须坚持Java1.6吗?
发布于 2015-03-12 15:12:10
是的很安全。Eclipse试图根据它正在运行的JRE设置ee信息。Eclipse的旧版本不知道它们发布后出现的java版本。
https://stackoverflow.com/questions/29007133
复制相似问题