Delen via


Artefacten publiceren met Gradle

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

Met Azure Artifacts kunt u uw afhankelijkheden efficiënt beheren vanuit één feed, waarbij verschillende soorten pakketten op één plaats worden opgeslagen. Met Azure Artifacts kunnen ontwikkelaars pakketten uit verschillende bronnen publiceren en gebruiken en deze delen volgens de zichtbaarheidsinstellingen van de feed. In dit artikel leert u hoe u verbinding maakt met een Azure Artifacts-feed en hoe u uw pakketten publiceert met gradle.

Vereisten

Een persoonlijk toegangstoken maken

Als u zich wilt verifiëren met uw feed, moet u eerst een persoonlijk toegangstoken maken met het verpakken van lees- en schrijfbereiken :

  1. Meld u aan bij uw Azure DevOps-organisatie en navigeer vervolgens naar uw project.

  2. Selecteer Gebruikersinstellingen en selecteer vervolgens Persoonlijke toegangstokens.

    Een schermopname die laat zien hoe u de knop persoonlijk toegangstoken kunt vinden.

  3. Selecteer Nieuw token en vul de vereiste velden in. Zorg ervoor dat u het lees- en schrijfbereik voor pakketten>selecteert.

  4. Selecteer Maken wanneer u klaar bent. Kopieer uw token en sla het op een veilige locatie op, want u hebt het nodig voor de volgende stap.

    Een schermopname die laat zien hoe u een nieuw persoonlijk toegangstoken maakt met lees- en schrijfbereiken voor pakketten.

Projectinstellingen

Voordat u uw project instelt, controleert u of Gradle is geïnstalleerd en of u de invoegtoepassing Maven-instellingen als volgt hebt toegevoegd aan uw build.gradle-bestand :

plugins {
  id 'maven-publish'
}

Build.gradle configureren

  1. Als er geen build.gradle-bestand bestaat in de hoofdmap van uw project, maakt u een nieuw bestand en geeft u het de naam build.gradle.

  2. Voeg de volgende sectie toe aan uw build.gradle-bestand in zowel de opslagplaatsen als de containers publishing.repositorys:

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

Hier volgt een voorbeeld van hoe uw build.gradle-bestand eruit moet zien:

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

Gradle.properties configureren

  1. Open het bestand gradle.properties in de map .gradle van uw basismap (~/.gradle/gradle/gradle.properties). Als het bestand niet bestaat, maakt u een nieuw bestand.

  2. Voeg het volgende codefragment toe, waarbij u de tijdelijke aanduidingen vervangt door uw feednaam, organisatienaam en het persoonlijke toegangstoken dat u eerder hebt gemaakt.

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

Uw pakketten publiceren

  1. Voer de volgende opdracht uit in uw projectmap om uw pakket te publiceren naar uw feed:

    gradle publish
    

Een schermopname van een pakket dat is gepubliceerd naar de feed.