Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse4-缺少约束:要求功能:osgi.extender_Java_Eclipse Rcp_E4 - Fatal编程技术网

Java Eclipse4-缺少约束:要求功能:osgi.extender

Java Eclipse4-缺少约束:要求功能:osgi.extender,java,eclipse-rcp,e4,Java,Eclipse Rcp,E4,运行Eclipse4应用程序时,它显示在验证时检测到问题 这可以通过运行配置并选择添加所需插件来解决,但这更多的是一个解决方案,而不是修复方案 我尝试过更改版本和添加/删除插件,但不知道如何解决这些错误 提到了一个类似的问题 这可能是什么原因造成的 如果在MANIFEST.MF中向所需插件添加org.eclipse.equinox.ds,则此对话框将不会在启动时显示。我通过比较单击添加所需插件前后的运行配置,找到了缺少的插件 缺少5个插件,但在产品文件中单击“添加所需插件”无法添加 org.a

运行Eclipse4应用程序时,它显示在验证时检测到问题

这可以通过运行配置并选择添加所需插件来解决,但这更多的是一个解决方案,而不是修复方案

我尝试过更改版本和添加/删除插件,但不知道如何解决这些错误

提到了一个类似的问题


这可能是什么原因造成的

如果在
MANIFEST.MF
中向所需插件添加
org.eclipse.equinox.ds
,则此对话框将不会在启动时显示。

我通过比较单击
添加所需插件前后的运行配置,找到了缺少的插件

缺少5个插件,但在产品文件中单击“添加所需插件”无法添加

org.apache.felix.scr
org.eclipse.equinox.event
org.eclipse.compare.core
org.eclipse.fx.osgi
org.eclipse.team.core

在将这些插件添加到产品文件和清单后,缺少约束的问题得到了解决

为什么“添加所需插件”只是一种解决方法?你需要有正确的插件才能工作。Eclipse版本之间所需的插件集确实有所不同,在本例中,是添加了org.apache.felix.scr导致了问题。应该设置应用程序,以便开发人员不必做任何其他事情来让它工作。我已尝试在产品文件中添加所需的插件,但这并没有添加所有插件。在运行配置中,它添加了所需的所有内容。此外,当我们构建应用程序时,它将使用清单等中的信息,而不是
运行配置
,因此这也将是一个问题?您使用的是什么版本的Eclipse?您的目标平台是什么版本的Eclipse?2018-12,目标平台设置为
运行平台
。这不是一个直接的解决方案,但我发现在产品文件和运行配置中使用基于“功能”的配置要容易得多。特性内容决定插件,并且应该总是正确的。
org.eclipse.equinox.ds
没有可用的插件。
org.eclipse.equinox.*
有多个条目,但没有
ds
。哇,他们把它拿出来了。肯尼斯·埃文斯(Kenneth Evans)在这篇文章中写道,“在Equinox目标组件下的4.10更新站点中”:几乎就是这样!我安装了
Equinox目标组件
,然后将
org.eclipse.Equinox.ds
添加到清单中。在添加必需的插件之后,它添加了
org.apache.felix.scr
插件,该插件修复了这个问题,因为它是一个依赖项。总的来说,可以通过添加
org.apache.felix.scr
而不做任何其他事情来避免这种情况,但我最终缺少了上面与Greg的评论中提到的约束。我缺少
osgi.service
的约束。这适用于
org.eclipse.e4.ui.services
org.eclipse.e4.ui.workbench
。您知道这可能是什么原因吗?
org.eclipse.equinox.ds
在最新版本的eclipse中不再使用。它已被有意义的
org.apache.felix.scr
所取代。你对我遇到的下一个错误有什么想法吗?如果更容易的话,我可以单独提出一个问题。我很难修复这些错误,因为我不知道在哪里可以找到,所以如果你有任何文件,我应该检查它将是伟大的。