我们正在使用设置版本属性的maven插件。这些属性在POM文件中用于创建War,EJB和EAR文件的文件名 - 并由Jenkins使用。
我的问题是,当我导入maven项目或重新导入时,IntelliJ使用这些文件名来生成工件,但工件名称变得怪异,因为导入时不会生成属性(插件未运行)。
最外面/顶部的pom有这些道具: $ {parsedVersion.majorVersion} $ {parsedVersion.minorVersion}
IQE-WS $ {parsedVersion.majorVersion} $ {parsedVersion.minorVersion}
EAR Pom文件有这个道具: IQE - $ {parsedVersion.majorVersion} $ {parsedVersion.minorVersion}
所以耳神器文件最终看起来像: IQE - $ {parsedVersion.majorVersion} $ {parsedVersion.minorVersion}的.ear
如果我对道具进行硬编码 - 比如说2和1则会变成 IQE-2.1.ear
答案 0 :(得分:1)
有很多方法可以解决这个问题。
最好是使用配置文件。将属性的原始版本放在CI框中使用的配置文件中,具有特定值的集合保存在本地环境中使用的配置文件中。使用-P profile-name
开关在CI框上激活配置文件,在maven项目窗口中选择适当的配置文件,在IntelliJ中激活配置文件。甚至可以根据环境属性或操作系统的存在自动激活正确的配置文件。
或者,您可以使用本地settings.xml文件覆盖属性,但这将特定于您,并且更难分发给团队和未来的开发人员,因此它不是一个很好的解决方案。