Строительный проект в Maven из тега SVN

В настоящее время мы используем Maven (v2.2.1) для управления нашими Java-проектами, включая использование release:prepare и release:perform для управления версиями наших выпусков.

Хотя все это довольно просто, мне нужно создать артефакты сборки из предыдущего выпуска - возможно ли, чтобы maven проверил заданный тег (svn) и собрал артефакты из этой версии?

т.е. У меня есть следующие теги для проекта в SVN:

  • проект-1.0.0
  • проект-1.0.1
  • проект-1.1.0

Я хотел бы построить «проект-1.0.1» (или фактически любой тег из этого проекта).

Изменить:

Чтобы прояснить, что я пытаюсь сделать, рассмотрим цели release:prepare и release:perform.

Во время :prepare и :perform Maven спрашивает, какой тег SCM следует использовать для этого выпуска, а затем создает тег, извлекает исходный код для этого тега в отдельный каталог, чтобы создать своего рода чистую сборку вашего проекта.

То, что я хотел бы сделать, это фактически выполнить эту последнюю часть, посредством чего я предоставлю тег SCM (в командной строке, а не жестко кодируя его в pom, поскольку это не было бы особенно гибким), и Maven с радостью уходит, чтобы проверить код и выполнить сборку в чистой комнате, в результате чего получается окончательный артефакт сборки точно так же, как release:perform.


person Crollster    schedule 21.11.2011    source источник


Ответы (1)


Вы можете посмотреть на загрузку проекта с помощью < href="http://maven.apache.org/scm/plugins/index.html" rel="nofollow">плагин maven scm.

Определив pom, который содержит вашу конфигурацию scm с указанным тегом, а также желаемую цель maven, вы можете проверить тег по вашему выбору и создать его.

Ссылка содержит пример конфигурации.

person Raghuram    schedule 21.11.2011
comment
Спасибо за предложение, однако у нас уже есть раздел ‹scm› в нашем pom, так как я считаю, что он необходим для правильного использования release:prepare и release:perform. То, что я ищу, — это способ восстановить конкретный артефакт из его тега (созданный с использованием процесса выпуска). Это не то, что я хочу делать каждый раз, поэтому я действительно не хочу включать тег в сам pom. - person Crollster; 21.11.2011