Поделиться через


Начало работы с пакетами Maven в Azure Artifacts

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Артефакты Azure позволяют разработчикам управлять зависимостями из одного веб-канала, обеспечивая контроль над общим доступом к пакетам. С помощью веб-каналов Артефактов Azure можно публиковать и восстанавливать пакеты Maven, а также настраивать вышестоящий источник для использования пакетов из общедоступных реестров, таких как Maven Central, Google Maven Репозиторий, подключаемые модули Gradle и JitPack. В этой статье описано, как настроить проект Maven, подключиться к веб-каналу Azure Artifacts, а также опубликовать и восстановить пакеты Maven.

Необходимые компоненты

Создание веб-канала

  1. Войдите в свою организацию Azure DevOps и перейдите в проект.

  2. Выберите артефакты и нажмите кнопку "Создать веб-канал".

  3. В поле "Имя" введите описательное имя веб-канала.

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

    Если вы хотите включить пакеты из общедоступных источников, установите флажок в разделе "Вышестоящий источник".

    В области укажите, является ли область веб-канала проектом или организацией.

  4. После завершения работы выберите Создать.

    Снимок экрана: выбор для создания веб-канала в Azure DevOps Services.

  1. Войдите на сервер Azure DevOps и перейдите в проект.

  2. Выберите артефакты и нажмите кнопку "Создать веб-канал".

  3. В поле "Имя" введите описательное имя веб-канала.

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

    Если вы хотите включить пакеты из общедоступных источников, установите флажок в разделе "Вышестоящий источник".

    В области укажите, является ли область веб-канала проектом или организацией.

  1. После завершения работы выберите Создать.

    Снимок экрана: выбор для создания веб-канала в Azure DevOps 2022.

  1. После завершения работы выберите Создать.

    Снимок экрана: выбор для создания веб-канала в Azure DevOps 2020.

  1. Войдите на сервер Azure DevOps и перейдите в проект.

  2. Выберите артефакты и выберите новый веб-канал.

  3. В поле "Имя" введите описательное имя веб-канала.

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

    Если вы хотите включить пакеты из общедоступных источников, выберите "Использовать пакеты" из общедоступных источников с помощью этого канала .

  4. После завершения работы выберите Создать.

    Снимок экрана: выбор для создания веб-канала в Azure DevOps 2019.

Примечание.

По умолчанию только что созданные веб-каналы имеют значение службы сборки проекта в качестве канала и средства чтения upstream (Сотрудник).

Подключение к веб-каналу

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и выберите веб-канал в раскрывающемся меню.

  3. Выберите "Подключиться к каналу" и выберите Maven в области навигации слева.

  4. Если вы впервые используете Azure Artifacts с Maven, убедитесь, что вы установили необходимые компоненты. В противном случае выберите " Получить инструменты " в правом верхнем углу, чтобы установить их.

  5. Следуйте инструкциям в разделе "Настройка проекта", чтобы настроить pom.xml и settings.xml файлы. Файлы должны выглядеть примерно так:

    • pom.xml —

        <repositories>
          <repository>
            <id>MavenDemo</id>
            <url>https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
            <releases>
              <enabled>true</enabled>
            </releases>
            <snapshots>
              <enabled>true</enabled>
            </snapshots>
          </repository>
        </repositories>
        <distributionManagement>
          <repository>
            <id>MavenDemo</id>
            <url>https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
            <releases>
              <enabled>true</enabled>
            </releases>
            <snapshots>
              <enabled>true</enabled>
            </snapshots>
          </repository>
        </distributionManagement>
      
    • settings.xml:

        <servers>
          <server>
            <id>MavenDemo</id>
            <username><ORGANIZATION_NAME></username>
            <password>[PERSONAL_ACCESS_TOKEN]</password>
          </server>
        </servers>
      
  6. Создайте личный маркер доступа с помощью области чтения и записи упаковки>, а затем вставьте его в <password> тег.

  1. Войдите в коллекцию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и выберите веб-канал в раскрывающемся меню.

  3. Выберите "Подключиться к каналу" и выберите Maven в области навигации слева.

  4. Если вы впервые используете Azure Artifacts с Maven, убедитесь, что вы установили необходимые компоненты, в противном случае выберите " Получить средства " в правом верхнем углу, чтобы установить их.

  5. Следуйте инструкциям в разделе "Настройка проекта", чтобы настроить pom.xml и settings.xml файлы. Файлы должны выглядеть примерно так:

    • pom.xml —

        <repositories>
          <repository>
            <id>MavenDemo</id>
            <url>http://<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
            <releases>
              <enabled>true</enabled>
            </releases>
            <snapshots>
              <enabled>true</enabled>
            </snapshots>
          </repository>
        </repositories>
        <distributionManagement>
          <repository>
            <id>MavenDemo</id>
            <url>http://<SERVER_NAME>/<COLLECTION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
            <releases>
              <enabled>true</enabled>
            </releases>
            <snapshots>
              <enabled>true</enabled>
            </snapshots>
          </repository>
        </distributionManagement>
      
    • settings.xml:

        <servers>
          <server>
            <id>MavenDemo</id>
            <username><COLLECTION_NAME></username>
            <password>[PERSONAL_ACCESS_TOKEN]</password>
          </server>
        </servers>
      
  6. Создайте личный маркер доступа с помощью области чтения и записи упаковки>, а затем вставьте его в <password> тег.

  1. Войдите в коллекцию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и выберите веб-канал.

  3. Выберите "Подключиться к каналу" и выберите Maven в области навигации слева.

  4. Выберите "Создать учетные данные Maven" и добавьте учетные данные в файл settings.xml пользователя внутри тега<servers>. Файл должен выглядеть так, как показано в следующем примере.

      <servers>
        <server>
          <id>server-2019-defaultcollection-demo</id>
          <username><FEED_NAME></username>
          <password>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</password>
        </server>
      </servers>
    
  5. Добавьте второй фрагмент кода в pom.xml проекта как внутри, так <repositories> и <distributionManagement> в тегах. Файл должен выглядеть так, как показано в следующем примере.

      <repositories>
        <repository>
          <id>server-2019-defaultcollection-demo</id>
          <url>http://<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>
      <distributionManagement>
        <repository>
          <id>server-2019-defaultcollection-demo</id>
          <url>http://<SERVER_NAME>/<COLLECTION_NAME>/_packaging/<FEED_NAME>/maven/v1</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </distributionManagement>
    

Публикация пакетов

  1. Откройте окно командной строки и перейдите в каталог проекта, где находится файл pom.xml , а затем выполните следующую команду, чтобы упаковать проект. Эта команда компилирует код, выполняет тесты, включенные и упаковает проект в распространяемый формат (например, JAR-файл).

    mvn package
    
  2. Выполните следующую команду из каталога проекта, чтобы опубликовать пакет в веб-канале:

    mvn deploy
    
  3. После успешного развертывания пакета он скоро будет доступен в веб-канале.

    Снимок экрана: пакет Maven, развернутый в веб-канале.

Примечание.

Если ваша организация использует брандмауэр или прокси-сервер, убедитесь, что вы разрешаете URL-адреса и IP-адреса домена Azure Artifacts.

Восстановление пакетов

  1. Перейдите к артефактам в проекте Azure DevOps, выберите веб-канал в раскрывающемся меню и выберите пакет, который требуется установить.

  2. Перейдите к обзору >Maven, а затем скопируйте фрагмент зависимостей.

  3. Откройте файл pom.xml и вставьте фрагмент кода в <dependencies> тег.

  4. Выполните следующую команду из каталога, где находится файл pom.xml , чтобы восстановить пакеты:

    mvn install