Introdução aos pacotes Maven no Azure Artifacts

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Os Artefatos do Azure permitem que os desenvolvedores gerenciem suas dependências a partir de um único feed enquanto fornecem controle sobre o compartilhamento de pacotes. Com os feeds do Azure Artifacts, você pode publicar e restaurar pacotes Maven e configurar fontes upstream para consumir pacotes de registros públicos como Maven Central, Google Maven Repository, Gradle Plugins e JitPack. Este artigo irá guiá-lo através da configuração do seu projeto Maven, da ligação a um feed de Artefactos do Azure e da publicação e restauração dos seus pacotes Maven.

Pré-requisitos

Criar um feed

  1. Inicie sessão na sua organização do Azure DevOps e, em seguida, aceda ao seu projeto.

  2. Selecione Artefatos e, em seguida, selecione Criar feed.

  3. Em Nome, insira um nome descritivo para o feed.

    Em Visibilidade, selecione uma opção para indicar quem pode visualizar os pacotes no feed.

    Se quiser incluir pacotes de fontes públicas, marque a caixa de seleção em Fontes upstream.

    Em Escopo, especifique se o escopo do feed é o projeto ou a organização.

  4. Selecione Criar quando terminar.

    Captura de tela que mostra seleções para criar um novo feed nos Serviços de DevOps do Azure.

  1. Inicie sessão no seu servidor Azure DevOps e, em seguida, aceda ao seu projeto.

  2. Selecione Artefatos e, em seguida, selecione Criar feed.

  3. Em Nome, insira um nome descritivo para o feed.

    Em Visibilidade, selecione uma opção para indicar quem pode visualizar os pacotes no feed.

    Se quiser incluir pacotes de fontes públicas, marque a caixa de seleção em Fontes upstream.

    Em Escopo, especifique se o escopo do feed é o projeto ou a organização.

  1. Selecione Criar quando terminar.

    Captura de tela que mostra seleções para criar um novo feed no Azure DevOps 2022.

  1. Selecione Criar quando terminar.

    Captura de tela que mostra seleções para criar um novo feed no Azure DevOps 2020.

  1. Inicie sessão no seu servidor Azure DevOps e, em seguida, aceda ao seu projeto.

  2. Selecione Artefatos e, em seguida, selecione Novo feed.

  3. Em Nome, insira um nome descritivo para o feed.

    Em Visibilidade, selecione uma opção para indicar quem pode visualizar os pacotes no feed.

    Se quiser incluir pacotes de fontes públicas, selecione a opção Usar pacotes de fontes públicas por meio deste feed .

  4. Selecione Criar quando terminar.

    Captura de tela que mostra seleções para criar um novo feed no Azure DevOps 2019.

Nota

Por padrão, os feeds recém-criados têm o valor Build Service do projeto definido como Feed e Upstream Reader (Colaborador).

Conectar-se a um feed

  1. Entre em sua organização do Azure DevOps e navegue até seu projeto.

  2. Selecione Artefatos e, em seguida, selecione seu feed no menu suspenso.

  3. Selecione Conectar ao feed e, em seguida, selecione Maven na área de navegação esquerda.

  4. Se esta for a primeira vez que utiliza os Artefactos do Azure com o Maven, certifique-se de que instalou os pré-requisitos. Caso contrário, selecione Obter as ferramentas no canto superior direito para instalá-las.

  5. Siga as instruções na seção Configuração do projeto para configurar seus arquivos pom.xml e settings.xml . Os seus ficheiros devem assemelhar-se aos seguintes exemplos:

    • 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. Gere um Token de Acesso Pessoal com o escopo Packaging>Read & write e cole-o <password> na tag .

  1. Entre em sua coleção de DevOps do Azure e navegue até seu projeto.

  2. Selecione Artefatos e, em seguida, selecione seu feed no menu suspenso.

  3. Selecione Conectar ao feed e, em seguida, selecione Maven no painel de navegação esquerdo.

  4. Se esta for a primeira vez que utiliza os Artefactos do Azure com o Maven, certifique-se de que instalou os pré-requisitos, caso contrário, selecione Obter as ferramentas no canto superior direito para as instalar.

  5. Siga as instruções na seção Configuração do projeto para configurar seus arquivos pom.xml e settings.xml . Os seus ficheiros devem assemelhar-se aos seguintes exemplos:

    • 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. Gere um Token de Acesso Pessoal com o escopo Packaging>Read & write e cole-o <password> na tag .

  1. Entre em sua coleção de DevOps do Azure e navegue até seu projeto.

  2. Selecione Artefatos e, em seguida, selecione seu feed.

  3. Selecione Conectar ao feed e, em seguida, selecione Maven no painel de navegação esquerdo.

  4. Selecione Gerar credenciais Maven e adicione as credenciais ao seu arquivo de settings.xml de usuário dentro da <servers> tag . O ficheiro deverá ter um aspeto semelhante ao seguinte exemplo:

      <servers>
        <server>
          <id>server-2019-defaultcollection-demo</id>
          <username><FEED_NAME></username>
          <password>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</password>
        </server>
      </servers>
    
  5. Adicione o segundo trecho ao pom.xml do seu projeto dentro das <repositories> tags e <distributionManagement> . O ficheiro deverá ter um aspeto semelhante ao seguinte exemplo:

      <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>
    

Publicar pacotes

  1. Abra uma janela de prompt de comando e navegue até o diretório do projeto onde o arquivo pom.xml está localizado e, em seguida, execute o seguinte comando para empacotar seu projeto. Este comando compila seu código, executa testes incluídos e empacota seu projeto em um formato distribuível (como um arquivo JAR).

    mvn package
    
  2. Execute o seguinte comando no diretório do projeto para publicar o pacote no feed:

    mvn deploy
    
  3. Depois de implantar com sucesso seu pacote, ele estará disponível em breve no seu feed.

    Uma captura de tela que mostra um pacote Maven implantado em um feed.

Nota

Se a sua organização estiver a utilizar uma firewall ou um servidor proxy, certifique-se de que permite URLs de Domínio de Artefactos do Azure e endereços IP.

Restaurar pacotes

  1. Navegue até Artefatos em seu projeto de DevOps do Azure, selecione seu feed no menu suspenso e selecione o pacote que deseja instalar.

  2. Navegue até Visão geral>Maven e copie o trecho de dependência.

  3. Abra o arquivo pom.xml e cole o trecho dentro da <dependencies> tag .

  4. Execute o seguinte comando a partir do diretório onde o arquivo pom.xml está localizado para restaurar seus pacotes:

    mvn install