2013-08-09 4 views
1

Я работаю над автоматизацией процесса выпуска в моем проекте с тегов на развертывание. Я создал для этого проект java, это будет единственное место для интеграции всех этапов с тегов, создания банок для развертывания.Автоматизация процесса выпуска и развертывания

Теперь для пометки и назначения версии я хочу использовать плагин релиза maven, но я вижу, что все команды maven должны выполняться через командную строку, что затрудняет проверку результата и вывода. Один из вариантов, который, как я чувствую, может решить эту проблему, - это то, что я могу выполнить команды maven с помощью api [как и у нас svnkit для subversion]. Хотя я могу выполнять команды maven через командную строку через java [Runtime.exec], но потом снова будет проверять результат и вывод.

Любые предложения по java-библиотеке для maven? или любой другой способ сделать то же самое? Моя основная цель - контролировать версию моего проекта и пометить сборку.

EDIT:

Maven эмбеддер не поддерживается больше: http://maven.40175.n5.nabble.com/Maven-Embedder-td4708683.html

EDIT:

я нашел выход, Гудзон обеспечивает плагин релиз Maven, а затем я разработал клиент Гудзон Java , Поэтому я смогу контролировать выпуск maven через параметры.

+0

Возможный дубликат [Embedding Maven 3] (http://stackoverflow.com/questions/3333251/embedding-maven-3) – chrylis

+0

PLease coment with downvote. Что не так с этим вопросом? – Lokesh

+0

@chrylis: В этом вопросе вряд ли есть информация. Никто даже не знает, что такое mavne. Я не вижу в этом никакой причины для downvoting. – Lokesh

ответ

2

Существует уже решение в связи с maven. Это maven-release-plugin, который точно поддерживает указанные шаги.

prepare-goal maven-release-plugin будет точно выполнять такие вещи, как проверка, были ли все изменены, и создать тег в svn.

Зачем вы хотите выполнить его через Java? вы можете использовать Jenkins для таких целей или только в командной строке:

mvn -B release:prepare release:perform 

вот и все.

+0

Я работаю над созданием настольного клиента, где пользователи могут выполнять выпуск одним кликом. Да, hudson-плагин может помочь, но отдельный java-api должен быть полезен, но я чувствую, что нет доступных. – Lokesh

+1

Почему пользователям нужен настольный клиент, поэтому релиз никогда не должен создаваться на локальной машине пользователей.Это нужно делать только в определенной среде, которая обычно находится на сервере сборки. – khmarbaise

+0

Я согласен с вашей точкой, имеет смысл. – Lokesh

Смежные вопросы