Dela via


Publicera artefakter med Gradle

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

Med Azure Artifacts kan du effektivt hantera dina beroenden från en enda feed och lagra olika typer av paket på ett och samma ställe. Med Azure Artifacts kan utvecklare publicera och använda paket från olika källor och dela dem enligt flödets synlighetsinställningar. I den här artikeln får du lära dig hur du ansluter till en Azure Artifacts-feed och publicerar dina paket med Hjälp av Gradle.

Förutsättningar

Skapa en personlig åtkomsttoken

Om du vill autentisera med ditt flöde måste du först skapa en personlig åtkomsttoken med paketering av läs- och skrivomfattningar :

  1. Logga in på din Azure DevOps-organisation och navigera sedan till projektet.

  2. Välj Användarinställningar och välj sedan Personliga åtkomsttoken.

    En skärmbild som visar hur du hittar knappen för personlig åtkomsttoken.

  3. Välj Ny token och fyll i de obligatoriska fälten. Se till att välja omfånget Läs och skriv för paketering>.

  4. Välj Skapa när du är klar. Kopiera din token och spara den på en säker plats, eftersom du behöver den för nästa steg.

    En skärmbild som visar hur du skapar en ny personlig åtkomsttoken med paketering av läs- och skrivomfattningar.

Projektinställningar

Innan du konfigurerar projektet kontrollerar du att Gradle är installerat och att du har lagt till plugin-programmet Maven Settings i filen build.gradle på följande sätt:

plugins {
  id 'maven-publish'
}

Konfigurera build.gradle

  1. Om det inte finns någon build.gradle-fil i projektets rot skapar du en ny fil och ger den namnet build.gradle.

  2. Lägg till följande avsnitt i filen build.gradle i både lagringsplatserna och containrarna publishing.repositories:

    maven {
        url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'            //for organization-scoped feeds use this format: 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/maven/v1'
        name '<FEED_NAME>'
        credentials(PasswordCredentials)
        authentication {
            basic(BasicAuthentication)
        }
    }
    

Här är ett exempel på hur filen build.gradle ska se ut:

repositories {
    mavenCentral()

    maven {
    url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'                //for organization-scoped feeds use this format: 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/maven/v1'
    name '<FEED_NAME>'
    credentials(PasswordCredentials)
    authentication {
        basic(BasicAuthentication)
        }
    }
}

publishing {
    publications {
        library(MavenPublication) {
            from components.java
        }
    }

    repositories {
        maven {
        url 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/maven/v1'           //for organization-scoped feeds use this format: 'https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/maven/v1'
        name '<FEED_NAME>'
        credentials(PasswordCredentials)
        authentication {
            basic(BasicAuthentication)
            }
        }
    }
}

Konfigurera gradle.properties

  1. Öppna filen gradle.properties som finns i katalogen .gradle i din hemmapp (~/.gradle/gradle.properties). Om filen inte finns skapar du en ny.

  2. Lägg till följande kodfragment och ersätt platshållarna med ditt flödesnamn, organisationsnamn och den personliga åtkomsttoken som du skapade tidigare.

    # Substitute FEED_NAME with the same name specified as the 'name' of the maven repository in build.gradle.
    # The value of the username is arbitrary but should not be blank.
    [FEED_NAME]Username=[ORGANIZATION_NAME]
    [FEED_NAME]Password=[PERSONAL_ACCESS_TOKEN]
    

Publicera dina paket

  1. Kör följande kommando i projektkatalogen för att publicera paketet i feeden:

    gradle publish
    

En skärmbild som visar ett paket som publicerats i feeden.