我正在做一个依赖于SWT的项目。它使用 Maven 作为构建工具和依赖管理系统。由于 SWT 依赖于平台,我需要告诉 Maven 应该使用哪个平台的依赖关系。
Maven配置文件通常用于根据os.family和os.arch属性有条件地包含依赖项,如下所示:
<profiles>
<profile>
<id>Linux-x86</id>
<activation>
<os>
<family>linux</family>
<arch>i386</arch>
</os>
</activation>
<dependencies>
<dependency>
<!-- some platform-specific dependency goes here -->
</dependency>
</dependencies>
</profile>
</profiles>
问题是os.arch可以有几个不同的值 - "i386","i486","i586"等,但是,在SWT世界中,它们都映射到"x86"。
是否有可能在 Maven 中指定一个互斥的值列表(在我的确切情况下为 os.arch(作为条件,而无需为每个值创建单独的配置文件?
还没有测试过它,但有一个拱形x86
见 Maven 文档 ....
马文简介
Maven Enforcer 插件
操作系统架构变量