有没有办法按属性激活配置文件,而不是检查特定值检查版本范围。 这就是我想要做的事情
<properties>
<frontend-maven-plugin.version>0.0.16</frontend-maven-plugin.version>
</properties>
...
...
<profile>
<id>new_version_of_frontend</id>
<activation>
<property>
<name>maven.version</name>
<value>3.1.0</value>
</property>
<properties>
<frontend-maven-plugin.version>0.0.23</frontend-maven-plugin.version>
</properties>
</activation>
</profile>
所以上面的工作(当maven版本是3.1.0时,将前端插件版本设置为0.0.23
我想要做的是将条件更改为3.1.0以及类似
之类的内容<value>[3.1.0,)</value>
但属性值检查不支持版本范围。还有其他办法吗?甚至检查版本是否为3.1+
答案 0 :(得分:1)
我相信开箱即用的Maven没有这样的功能。在研究其内部时,Maven通常非常简单。基于属性的配置文件激活基本上是关于两个字符串相等,仅此而已,这里没有额外的逻辑。
我可以构建一个解决方案,该解决方案引入了自己的简单Maven插件,该插件执行实际范围机制并将frontend-maven-plugin.version.within.range
之类的属性设置为true
或false
的值。然后,您的配置文件激活条件基于给定属性的true
值。如果您足够早地启动插件,可能会有效,可能在生命周期的initialize
阶段。然而,我不确定配置文件激活是否更早。您需要验证这一点。