eclipse - Java 8 & 缺少所需的能力 Require-Capability : osgi. ee;过滤器 ="(&(osgi.ee=JavaSE)(version=1.8))"

标签 eclipse eclipse-plugin osgi java-8 equinox

我使用 Eclipse Luna win32.x86_64 运行 Java 8。

这里来自 Help Menu > About > Installation Detail > Configuration Tab :

java.runtime.version=1.8.0_05-b13
java.version=1.8.0_05

我创建了新的插件项目,请求JavaSE-1.8作为执行环境:

Plug-in Editor. JavaSE-1.8 as Execution Environment

myplugin/META-INF/MANIFEST.MF我当然有文件:
 Bundle-RequiredExecutionEnvironment: JavaSE-1.8

我在产品文件中使用这个插件。当我尝试验证它时,出现以下错误:

Validations Dialog, opened from the product file editor

当然,如果我启动产品,我会得到:
!ENTRY org.eclipse.osgi 2 0 2014-07-10 08:14:22.042
!MESSAGE One or more bundles are not resolved because the following root constraints are not resolved:
!SUBENTRY 1 org.eclipse.osgi 2 0 2014-07-10 08:14:22.043
!MESSAGE Bundle update@********/myplugin/ was not resolved.
!SUBENTRY 2 myplugin 2 0 2014-07-10 08:14:22.044
!MESSAGE Missing required capability Require-Capability: osgi.ee; filter="(&(osgi.ee=JavaSE)(version=1.8))".

我试图验证很多:

首选项 > Java > 已安装的 JRE

Installed JREs

首选项 > Java > 已安装的 JRE > 执行环境

Excution Environments

首选项 > Java > 编译器:JDK 合规编译器合规级别

Compiler

当我启动产品时,我在 Launching 选项卡中检查了我使用 jre8 作为执行环境。

我什至试图改变 Java Runtime EnvironmentRun Configurations对话:

Java Runtime Environment

我尝试了不同的设置。它们都不起作用。

怎么了?

这是一个已知问题吗?

最佳答案

该错误意味着您的捆绑包具有 Require-Capability: osgi.ee; filter="(&(osgi.ee=JavaSE)(version=1.8))"其 list 中的条目。因此,这意味着仅当有提供此功能的捆绑包时,捆绑包才会启动。

对于 osgi.ee 功能,OSGi 框架 (equinox) 应该提供此功能。显然它不会这样做。

因此,一种方法是从捆绑 list 中删除 header 。
另一种是使春分输出能力。也许您可以简单地尝试使用最新的 equinox 版本。不确定这是否有帮助。
您还可以尝试设置框架属性(使用 -D):
org.osgi.framework.system.capabilities=osgi.ee; osgi.ee="JavaSE";version:List="1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8"


  • The same problem on the eclipse list
  • 关于eclipse - Java 8 & 缺少所需的能力 Require-Capability : osgi. ee;过滤器 ="(&(osgi.ee=JavaSE)(version=1.8))",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24669940/

    相关文章:

    Eclipse插件开发: Display View under same folder

    eclipse - 如何在没有eclipse本身的情况下安装eclipse颜色主题插件

    service - OSGi 声明式服务在运行时过滤引用

    java - 导出与其他包有依赖关系的包

    java - 找出哪个包调用服务

    java - Maven Jetty 插件兼容性问题

    eclipse - EGit,为 URI、主机和存储库路径选择正确的参数。

    eclipse - 在 Egit (Eclipse) 中更改用户位置(主变量)

    eclipse - Hadoop WordCount 从命令行而不是从 Eclipse 运行

    eclipse - 将 GitHub 项目导入 Eclipse