Java 使用Tycho构建片段时出错:“0”;无法在此环境中安装xyz.fragment,因为其筛选器不适用";
在Eclipse中的片段项目上运行Java 使用Tycho构建片段时出错:“0”;无法在此环境中安装xyz.fragment,因为其筛选器不适用";,java,eclipse,maven,cross-platform,tycho,Java,Eclipse,Maven,Cross Platform,Tycho,在Eclipse中的片段项目上运行mvn install时,我遇到以下错误: 无法在此环境中安装${fragment name},因为其筛选器不适用 在清单中使用eclipseplatformfilter:(osgi.os=macosx)会中断构建 以下是围绕键错误的输出(编辑了ID/目录名): 链接()没有帮助 我在internet上发现了一些类似的错误(组件X无法安装在此环境中,因为它的筛选器不适用),但它们都适用于它下载的软件,并且没有解决方案或者解决方案不适用于我的情况 谢谢你的帮助 编
mvn install
时,我遇到以下错误:
无法在此环境中安装${fragment name},因为其筛选器不适用
在清单中使用eclipseplatformfilter:(osgi.os=macosx)会中断构建
以下是围绕键错误的输出(编辑了ID/目录名):
链接()没有帮助
我在internet上发现了一些类似的错误(组件X无法安装在此环境中,因为它的筛选器不适用
),但它们都适用于它下载的软件,并且没有解决方案或者解决方案不适用于我的情况
谢谢你的帮助
编辑:
我发现在主机插件中使用
eclipseplatformfilter:(osgi.os=macosx)
,在片段中使用eclipseplatformfilter:(|(osgi.os=macosx)(osgi.os=linux)(osgi.os=win32))
。似乎构建要经过祖先pom中的每个环境集,当片段不适用于这些环境中的任何一个时,构建就会中断。。。。当然,我可以设置一些标志来防止这种情况发生?Tycho为通过POM配置的所有操作系统环境构建。目前没有办法将这些环境自动过滤到配置为eclipseplatformfilter
的环境中。因此,当仅为特定操作系统构建片段时,您需要在片段的POM中手动覆盖父POM中的
配置:
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho-version}</version>
<configuration>
<environments>
<environment>
<os>macosx</os>
<ws>cocoa</ws>
<arch>x86_64</arch>
</environment>
</environments>
</configuration>
</plugin>
</plugins>
</build>
org.eclipse.tycho
目标平台配置
${tycho版本}
马科斯
热可可
x86_64
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho-version}</version>
<configuration>
<environments>
<environment>
<os>macosx</os>
<ws>cocoa</ws>
<arch>x86_64</arch>
</environment>
</environments>
</configuration>
</plugin>
</plugins>
</build>