为什么我的 Eclipse 启动配置会忽略我的插件的环境规范?

Why does my Eclipse launch config ignore my plug-in's environment specification?

在我的大项目中,我有一个 Eclipse 应用程序启动配置。它根据选定的功能启动应用程序(功能是插件组)。

在其中一个功能中,有一个插件指定只有在 Linux 环境中启动时才会安装。这是 feature.xml 文件中的样子:

<plugin
    id="com.company.package.cool.plugin"
    os="linux"
    ws="gtk"
    arch="x86_64"
    download-size="0"
    install-size="0"
    version="0.0.0"
    unpack="false"/>

然而,当应用程序在 Windows 环境中启动时,Eclipse 会安装插件。

为什么 Eclipse 会忽略自己的规范?有解决办法吗?有解决方法吗?

插件的 MANIFEST.MF 中的 Eclipse-PlatformFilter 控制插件何时“解析”。将您的插件转换为片段并添加此行(仅限 macOS 示例):

Eclipse-PlatformFilter: (& (osgi.ws=cocoa) (osgi.os=macosx) (osgi.arch=x86_64) )

我不太确定,但我认为 feature.xml 规范仅供安装人员使用。

可以在 vogel/a

上找到更多信息