Обычно свойства в ant являются неизменяемыми после установки.
С Ant addon Flaka вы можете изменять или перезаписывать существующие свойства - даже свойства пользователя (эти свойства устанавливаются с помощью командной строки -Dkey = value), т.е. создавать макрос и использовать его следующим образом:
<project name="demo" xmlns:fl="antlib:it.haefelinger.flaka">
<property name="foo" value="bar"/>
<macrodef name="createproperty">
<attribute name="outproperty"/>
<attribute name="input"/>
<sequential>
<fl:let> @{outproperty} ::= '@{input}'</fl:let>
</sequential>
</macrodef>
<!-- create new property -->
<createproperty input="${foo}bar" outproperty="fooo"/>
<echo>$${fooo} => ${fooo}</echo>
<echo>1. $${foo} => ${foo}</echo>
<!-- overwrite existing property -->
<createproperty input="foo${foo}" outproperty="foo"/>
<echo>2. $${foo} => ${foo}</echo>
</project>
выход
[echo] ${fooo} => barbar
[echo] 1. ${foo} => bar
[echo] 2. ${foo} => foobar
в качестве альтернативы вы можете использовать некоторый язык сценариев (Groovy, Javascript, JRuby ..) и использовать ant api:
project.setProperty(String name, String value)
для перезаписи свойства.