ich mit dem akzeptierten Ansatz nicht wirklich zufrieden war, so Ich habe es ein wenig vereinfacht.
gesetzt Grundsätzlich eine Standardeigenschaft in den normalen Eigenschaften blockieren, und nur überschreiben, wenn entsprechende (anstelle einer effektiven switch-Anweisung):
<properties>
<!-- Sane default -->
<buildNumber>0</buildNumber>
<!-- the other props you use -->
</properties>
<profiles>
<profile>
<id>ci</id>
<activation>
<property>
<name>env.buildNumber</name>
</property>
</activation>
<properties>
<!-- Override only if necessary -->
<buildNumber>${env.buildNumber}</buildNumber>
</properties>
</profile>
</profiles>
Es gibt eine gute Antwort hier: http://stackoverflow.com/ a/13709976/868456 – Dimath
@Dimath Lösungen scheint viel einfacher als die vorgeschlagene Antwort hier .. – lifeofguenter