Compartilhar via


Publicar artefatos do Maven usando o Gradle

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Neste artigo, você aprenderá a se conectar a um feed do Azure Artifacts e publicar artefatos do Maven usando o Gradle.

Pré-requisitos

Configuração do projeto

Antes de configurar seu projeto, verifique se você instalou o Gradle e adicionou o plug-in Configurações do Maven ao arquivo build.gradle da seguinte maneira:

plugins {
  id "net.linguica.maven-settings" version "0.5"
}

Criar um token de acesso pessoal

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

  2. Selecione Configurações do usuário e, em seguida, selecione Tokens de acesso pessoal.

    Captura de tela mostrando como criar um token de acesso pessoal

  3. Selecione Novo Token e preencha os campos necessários. Selecione o escopo Empacotamento>Leitura e Gravação.

  4. Selecione Criar quando terminar. Copie o token e salve-o em um local seguro.

    Captura de tela mostrando como criar um novo token de acesso pessoal com escopos de leitura e gravação de empacotamento.

Configurar build.gradle

  1. Se um arquivo build.gradle não existir na raiz do projeto, crie um novo arquivo e nomeie-o: build.gradle.

  2. Adicione a seção a seguir ao arquivo build.gradle nos contêineres repositórios e publishing.repositories .

    maven {
        url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'
        name '<FEED_NAME>'
        authentication {
            basic(BasicAuthentication)
        }
    }
    
  3. Aqui está um exemplo de como deve ser a aparência do arquivo build.gradle :

    publishing { 
        publications { 
            myPublication(MavenPublication) { 
                groupId '<GROUP_ID>' 
                artifactId '<ARTIFACT_ID>' 
                version '<VERSION_NUMBER>'           
                artifact '<PATH_TO_YOUR_JAR_FILE>'   
            } 
        } 
    
        // Repositories to publish artifacts 
        repositories { 
            maven {
                url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'
                name '<FEED_NAME>'
                authentication {
                    basic(BasicAuthentication)
                }
            }
        } 
    } 
    
    // Repositories to fetch dependencies
    repositories { 
            maven {
                url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'
                name '<FEED_NAME>'
                authentication {
                    basic(BasicAuthentication)
                }
            }
    } 
    

Configurar settings.xml

  1. Abra o arquivosettings.xml no diretório base e adicione o snippet a seguir. Substitua os espaços reservados pelo nome do feed, pelo nome da organização e pelo token de acesso pessoal criado anteriormente.

    <server>
        <id>[FEED_NAME]</id>
        <username>[ORGANIZATION_NAME]</username>
        <password>[PERSONAL_ACCESS_TOKEN]</password>
    </server>
    

Publicar artefatos

Execute o comando a seguir em um prompt de comando com privilégios elevados para publicar seu pacote no feed. Seu novo pacote será nomeado: groupId:artifactId.

gradle publish