我正在开发一个依赖于SWT的项目。它使用Maven作为构建工具和依赖管理系统。因为SWT是依赖于平台的,所以我需要告诉Maven应该使用哪个平台。使用互斥值列表激活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,在我的精确情况下)作为条件,而无需为每个值创建单独的配置文件?
据我所知您可以构建包含不同平台/体系结构等的产品,并启动该产品一个合适的平台会自动选择正确的工件。 OSGi? – khmarbaise
你有没有关于它在实践中如何工作的更多细节?任何例子可能?提前致谢! –