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
Maak een Azure DevOps-organisatie en een project als u dat nog niet hebt gedaan.
Maak een feed als u er nog geen hebt.
Download en installeer Gradle.
Installeer de Java Development Kit (JDK) versie 8 of hoger.
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 :
Meld u aan bij uw Azure DevOps-organisatie en navigeer vervolgens naar uw project.
Selecteer Gebruikersinstellingen en selecteer vervolgens Persoonlijke toegangstokens.
Selecteer Nieuw token en vul de vereiste velden in. Zorg ervoor dat u het lees- en schrijfbereik voor pakketten>selecteert.
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.
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
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.
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
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.
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
Voer de volgende opdracht uit in uw projectmap om uw pakket te publiceren naar uw feed:
gradle publish