Как настроить Maven2 для публикации в Artifactory?

В настоящее время у меня есть проект Maven2, который создает JAR при запуске:

mvn clean package

Мне нужно сейчас настроить pom.xml опубликовать этот JAR (myapp.jar) на сервер Artifactory, работающий по адресу:

http://myartifactory/artifactory/simple/myorg/myapp/0.1

Я пытался добавить <repositories> элемент к моему pom.xml но ничего не публикуется с этим конфигом:

<repositories>
    <repository>
        <id>myartifactory</id>
        <url>http://myartifactory/artifactory/simple/</url>
    </repository>
</repositories>

Какие-нибудь идеи относительно того, как я мог заставить публикацию работать? Для простоты притворимся, что этот репозиторий Artifactory аутентифицирован для принятия публикаций / записей от пользователя с username=foo а также password=bar,

1 ответ

Решение

У вас есть два варианта (обратите внимание, что последний является рекомендуемым):

добавлять DistributionManagement часть вашего пом и server часть вашего settings.xml

  1. Допустим, вы хотите развернуть в хранилище libs-snapshot-local. В этом случае вам нужно перейти в древовидный браузер в Artifactory, сосредоточиться на уровне хранилища, скопировать Distribution Management фрагмент и вставьте его в свой pom.xml: Управление Распределением
  2. Далее вам нужно сообщить Maven учетные данные. Для этого нажмите на свое имя пользователя в правом верхнем углу, введите пароль, чтобы разблокировать экран, скопируйте server тег от Maven Settings панель: введите описание изображения здесь Это тот, который вы вставляете в свой settings.xml, Не забудьте заменить ${server-id} реальным идентификатором сервера (тот, который у вас есть в Distribution Management сейчас).
  3. Теперь просто беги mvn deploy и наслаждаться.

Работа с плагином Maven Artifactory:

  1. Добавить соответствующие <plugin> часть, как описано в вики на ваш pom.xml, Он включает в себя как целевой репозиторий, так и учетные данные (пожалуйста, используйте внешний источник учетных данных, например, переменные среды или системные свойства).
  2. Бежать mvn deploy и наслаждайтесь не только развертыванием в Artifactory, но и дополнительными функциями, как описано ниже.

Дополнительные функции Artifactory Maven Plugin (помимо обычного развертывания Maven):

  1. Разрешить добавление пользовательских свойств в развернутые файлы
  2. Предоставить спецификацию сборки (buildInfo), позволяющую интегрировать сборку с любым сервером сборки (даже с теми, которые не поддерживаются JFrog) или даже с автономными сборками (вообще без сервера сборки).
Другие вопросы по тегам