Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utiliser CodeArtifact avec Gradle
Une fois que vous avez le jeton d' CodeArtifact authentification dans une variable d'environnement, comme décrit dans Transmettre un jeton d'authentification à l'aide d'une variable d'environnement, suivez ces instructions pour utiliser les packages Maven depuis un référentiel et y publier de nouveaux packages. CodeArtifact
Rubriques
Récupérer les dépendances
Pour récupérer les dépendances CodeArtifact dans une version Gradle, utilisez la procédure suivante.
Pour récupérer les dépendances CodeArtifact dans une version Gradle
Si ce n'est pas le cas, créez et stockez un jeton d' CodeArtifact authentification dans une variable d'environnement en suivant la procédure décrite dansTransmettre un jeton d'authentification à l'aide d'une variable d'environnement.
-
Ajoutez une
mavensection à larepositoriessection dubuild.gradlefichier de projet.maven { url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/' credentials { username "aws" password System.env.CODEARTIFACT_AUTH_TOKEN } }urlDans l'exemple précédent, il s'agit du point de terminaison de votre CodeArtifact dépôt. Gradle utilise le point de terminaison pour se connecter à votre référentiel. Dans l'exemple,my_domainil s'agit du nom de votre domaine,111122223333de l'identifiant du propriétaire du domaine etmy_repodu nom de votre référentiel. Vous pouvez récupérer le point de terminaison d'un dépôt à l'aide de laget-repository-endpointAWS CLI commande.Par exemple, avec un dépôt nommé
my_repodans un domaine nommémy_domain, la commande est la suivante :aws codeartifact get-repository-endpoint --domainmy_domain--domain-owner111122223333--repositorymy_repo--format mavenLa
get-repository-endpointcommande renverra le point de terminaison du référentiel :url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/'L'
credentialsobjet de l'exemple précédent inclut le jeton d' CodeArtifact authentification que vous avez créé à l'étape 1 et que Gradle utilise pour s'authentifier. CodeArtifactNote
Pour utiliser un point de terminaison à double pile, utilisez le
codeartifact.point de terminaison.region.on.aws (Facultatif) - Pour utiliser le CodeArtifact référentiel comme seule source pour les dépendances de votre projet, supprimez toutes les autres sections
repositoriesdebuild.gradle. Si vous avez plusieurs référentiels, Gradle recherche les dépendances dans chaque référentiel dans l'ordre dans lequel elles sont répertoriées.Après avoir configuré le référentiel, vous pouvez ajouter des dépendances de projet à la
dependenciessection avec la syntaxe Gradle standard.dependencies { implementation 'com.google.guava:guava:27.1-jre' implementation 'commons-cli:commons-cli:1.4' testImplementation 'org.testng:testng:6.14.3' }
Plug-ins de récupération
Par défaut, Gradle résoudra les plugins à partir du portail public des plugins Gradle
Pour extraire des plugins d'un CodeArtifact référentiel
Si ce n'est pas le cas, créez et stockez un jeton d' CodeArtifact authentification dans une variable d'environnement en suivant la procédure décrite dansTransmettre un jeton d'authentification à l'aide d'une variable d'environnement.
Ajoutez un
pluginManagementbloc à votresettings.gradlefichier. LepluginManagementbloc doit apparaître avant toute autre instruction danssettings.gradle, voir l'extrait suivant :pluginManagement { repositories { maven { name 'my_repo' url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/' credentials { username 'aws' password System.env.CODEARTIFACT_AUTH_TOKEN } } } }
Cela garantira que Gradle résout les plugins à partir du référentiel spécifié. Le référentiel doit avoir un référentiel en amont avec une connexion externe au portail des plugins Gradle (par exemplegradle-plugins-store) afin que les plugins Gradle couramment requis soient disponibles pour la compilation. Pour plus d'informations, consultez la documentation Gradle
Publier des artefacts
Cette section décrit comment publier une bibliothèque Java créée avec Gradle dans un CodeArtifact référentiel.
Ajoutez d'abord le maven-publish plugin dans la plugins section du build.gradle fichier du projet.
plugins { id 'java-library' id 'maven-publish' }
Ajoutez ensuite une publishing section au build.gradle fichier de projet.
publishing { publications { mavenJava(MavenPublication) { groupId = 'group-id' artifactId = 'artifact-id' version = 'version' from components.java } } repositories { maven { url 'https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/' credentials { username "aws" password System.env.CODEARTIFACT_AUTH_TOKEN } } } }
Le maven-publish plugin génère un fichier POM basé sur le groupIdartifactId, et version spécifié dans la publishing section.
Une fois ces modifications build.gradle terminées, exécutez la commande suivante pour créer le projet et le télécharger dans le référentiel.
./gradlew publish
list-package-versionsÀ utiliser pour vérifier que le package a bien été publié.
aws codeartifact list-package-versions --domainmy_domain--domain-owner111122223333--repositorymy_repo--formatmaven\ --namespacecom.company.framework--packagemy-package-name
Exemple de sortie :
{ "format": "maven", "namespace": "com.company.framework", "package": "example", "versions": [ { "version": "1.0", "revision": "REVISION-SAMPLE-1-C7F4S5E9B772FC", "status": "Published" } ] }
Pour plus d'informations, consultez les rubriques suivantes sur le site Web de Gradle :
Exécuter une compilation Gradle dans IntelliJ IDEA
Vous pouvez exécuter une version Gradle dans IntelliJ IDEA qui extrait les dépendances de. CodeArtifact Pour vous authentifier CodeArtifact, vous devez fournir à Gradle un jeton d' CodeArtifact autorisation. Il existe trois méthodes pour fournir un jeton d'authentification.
Méthode 1 : Stockage du jeton d'authentification dans
gradle.properties. Utilisez cette méthode si vous êtes en mesure de remplacer ou d'ajouter du contenu augradle.propertiesfichier.Méthode 2 : Stockage du jeton d'authentification dans un fichier séparé. Utilisez cette méthode si vous ne souhaitez pas modifier votre
gradle.propertiesfichier.Méthode 3 : Génération d'un nouveau jeton d'authentification pour chaque exécution en l'exécutant en
awstant que script en ligne dans.build.gradleUtilisez cette méthode si vous souhaitez que le script Gradle récupère un nouveau jeton à chaque exécution. Le jeton ne sera pas stocké dans le système de fichiers.