Publicación de artefactos de Maven mediante Gradle

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

En este artículo, aprenderá a conectarse a una fuente de Azure Artifacts y a publicar artefactos de Maven mediante Gradle.

Prerrequisitos

Configuración del proyecto

Antes de configurar el proyecto, asegúrese de haber instalado Gradle y agregado el complemento De configuración de Maven al archivo build.gradle de la siguiente manera:

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

Crear un token de acceso personal

  1. Inicie sesión en la organización de Azure DevOps y vaya al proyecto.

  2. Seleccione Configuración de usuario y, a continuación, seleccione Tokens de acceso personal.

    Captura de pantalla que muestra cómo crear un token de acceso personal

  3. Seleccione Nuevo token y rellene los campos obligatorios. Asegúrese de seleccionar el ámbito Empaquetado>Lectura y escritura.

  4. Cuando haya terminado, seleccione Crear. Copie el token y guárdelo en una ubicación segura.

    Captura de pantalla que muestra cómo crear un nuevo token de acceso personal con el empaquetado de ámbitos de lectura y escritura.

Configuración de build.gradle

  1. Si un archivo build.gradle no existe en la raíz del proyecto, cree un archivo y asígnelo el nombre build.gradle.

  2. Agregue la siguiente sección al archivo build.gradle tanto en los repositorios como en los contenedores 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. Este es un ejemplo del aspecto que debe tener el archivo 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)
                }
            }
    } 
    

Configuración de settings.xml

  1. Abra el archivo settings.xml en el directorio principal y agregue el siguiente fragmento de código. Reemplace los marcadores de posición por el nombre de fuente, el nombre de la organización y el token de acceso personal que creó anteriormente.

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

Publicación de artefactos

Ejecute el siguiente comando en un símbolo del sistema con privilegios elevados para publicar el paquete en la fuente. El nuevo paquete se denominará: groupId:artifactId.

gradle publish