В моем файле build.xml я увеличиваю число версий сборки в файле свойств следующим образом:
<target name="minor">
<propertyfile file="build_info.properties">
<entry key="build.minor.number" type="int" operation="+" value="1" pattern="00" />
<entry key="build.revision.number" type="int" value="0" pattern="00" />
</propertyfile>
</target>
У меня также есть похожие записи для основного и ревизионного. (from Номера сборки: major.minor.revision)
Это отлично работает. Теперь я хотел бы взять этот увеличенный номер сборки и ввести его в исходный код:
//Main.as
public static const VERSION:String = "@(#)00.00.00)@";
Используя:
<target name="documentVersion">
<replaceregexp file="${referer}" match="@\(#\).*@" replace="@(#)${build.major.number}.${build.minor.number}.${build.revision.number})@" />
</target>
Теперь этот сортир работает. Он действительно заменяет версию, но с устаревшим номером версии. Поэтому всякий раз, когда я запускаю ANT script, файл build_info.properties обновляется до нужной версии, но файл исходного кода использует предварительно обновленное значение.
Я повторил, чтобы проверить, действительно ли я увеличиваю номер сборки до того, как я вызову замену, и я заметил, что эхо:
<echo>${build.minor.number}</echo>
//After updating it still shows old non updated value here but the new value in the property file.
Итак, есть способ получить обновленное значение в файле свойств, чтобы я мог использовать его для ввода в исходный код?
Приветствия