Ребята подскажите как настроить публикацию либы в репозиторий мавен.
У нас поднят Sonatype Nexus, есть библиотека (обертка вокруг селениума которую я пишу) которая собирается как jar файл Дженкинсом. Сейчас после каждой сборки я деплою ее руками в нексус - работает все замечательно, но это отнимает время.
Знаю что что можно настроить деплой как средствами дженкинса так и самим мавеном. Но что-то я уже сколько прочитал а так и не разобрался как сделать. Возможно кто-то сталкивался?
Еще раз перечитал заголовок: так вам все же нужно залить либу в локальный мейвен репозиторий или нексус?
Если в локальный, все делается командой mvn install.
У нас лично для нексуса прописываются секции repository / pluginRepository + mirror в settings.xml. Т.е. при деплое / релизе, мейвен будет знать, куда идти.
Отлично, с деплоем разобрался, теперь хочу разобратся с автоматическим задаванием версии.
Как сделать так что бы не морочить себе голову и не пилить ручками а что бы оно само ставилось как-то.
Я так понял что при команде deploy если в версие присутствует *-SNAPSHOT то оно задеплоит его в репозиторий для снепшота а если нет то загрузит его в релиз?
mvn release:prepare release:perform потребовал у меня внести в pom.xml что-то такое:
Да, именно так. В процессе релиза происходит переключение версии (с убиранием суффикса SNAPHOT) с последующим deploy и отправкой в Nexus. После этого версия увеличивается на 1 и добавляется суффикс SNAPSHOT. Оба изменения версий сопровождаются коммитом.