Как я могу заставить Maven записать свойство в файл свойств во время упаковки? - PullRequest
0 голосов
/ 31 августа 2010

Для непрерывной интеграции я использую Maven 2 и TeamCity 5.1.2. Номер моего сборщика определяется шаблоном %maven.project.version%.{0}, и он экспортируется в скрипт сборки Maven как ${build.number}

Когда сборка создает файл jar, я бы хотел, чтобы jar содержал файл свойств с этой информацией внутри:

build.number=#1.1-SNAPSHOT.106

Это так, что номер сборки доступен для отображения и т. Д. Во время выполнения.

Ответы [ 3 ]

3 голосов
/ 31 августа 2010

У вас может быть копия файла свойств с заполнителем для номера сборки

build.number=${build.number}

Чем копирование с включенной фильтрацией.

1 голос
/ 01 сентября 2010

Судя по комментарию, похоже, что% maven.project.version% не заменяется TeamCity.Вы получаете номер задания сборки, но не получаете значение для идентификатора maven.

Я хотел бы рассмотреть возможность сделать это в двух частях.

Может только $ {build.number}содержит фактический номер сборки вместо% maven.project.version%?

Если это так, вы должны иметь в своем файле свойств следующую информацию:

build.number=#${project.version}.${build.number}

Теоретически это может привести к:

build.number=#1.1-SNAPSHOT.106

Но не работая с TeamCityэто просто теория.

0 голосов
/ 19 апреля 2013

Попробуйте

build.number=${buildNumber}

, где ${buildNumber} - место для Maven, чтобы добавить следующий номер.

...