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.
UtiliserCodeArtifactavec Gradle
Une fois que vous aurezCodeArtifactjeton d'authentification dans une variable d'environnement, comme décrit dansTransmettre un jeton d'authentification à l'aide d'une variable d'environnement, suivez ces instructions pour utiliser les packages Maven depuis et publier de nouveaux packages vers unCodeArtifactréférentiel.
Rubriques
Extraire les dépendances
Pour récupérer les dépendances à partir deCodeArtifactdans une version Gradle, utilisez la procédure suivante.
Pour récupérer les dépendances à partir deCodeArtifactdans une version Gradle
Si ce n'est pas le cas, créez et stockez unCodeArtifactjeton d'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
maven
section durepositories
section du projetbuild.gradle
fichier.maven { url 'https://
my_domain
-111122223333
.d.codeartifact.region
.amazonaws.com/maven/my_repo
/' credentials { username "aws" password System.env.CODEARTIFACT_AUTH_TOKEN } }Le
url
dans l'exemple précédent est votreCodeArtifactpoint de terminaison du référentiel. Gradle utilise le point de terminaison pour se connecter à votre référentiel. Dans l'échantillon,my_domain
est le nom de votre domaine,111122223333
est l'ID du propriétaire du domaine, etmy_repo
est le nom de votre dépôt. Vous pouvez récupérer le point de terminaison d'un dépôt à l'aide duget-repository-endpoint
AWS CLIcommande.Par exemple, avec un dépôt nommé
mon_repo
dans un domaine nommémon_domaine
, la commande est la suivante :aws codeartifact get-repository-endpoint --domain
my_domain
--domain-owner111122223333
--repositorymy_repo
--format mavenLe
get-repository-endpoint
la commande renverra le point de terminaison du référentiel :url 'https://
my_domain
-111122223333
.d.codeartifact.region
.amazonaws.com/maven/my_repo
/'Le
credentials
dans l'exemple précédent, l'objet inclutCodeArtifactjeton d'authentification que vous avez créé à l'étape 1 et que Gradle utilise pour s'authentifier auprès deCodeArtifact. (Facultatif) - Pour utiliserCodeArtifactréférentiel comme seule source pour les dépendances de votre projet, supprimez toutes les autres sections dans
repositories
à partir debuild.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 au
dependencies
section avec 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 du public.Portail du plugin Gradle
Pour extraire des plugins d'unCodeArtifactréférentiel
Si ce n'est pas le cas, créez et stockez unCodeArtifactjeton d'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
pluginManagement
bloquer sur votresettings.gradle
fichier. LepluginManagement
le bloc doit apparaître avant toute autre instruction danssettings.gradle
, consultez 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 du plugin Gradle (par ex.gradle-plugins-store
) afin que les plugins Gradle couramment requis soient disponibles pour la compilation. Pour plus d'informations, consultez leDocumentation Gradle
Publier des artefacts
Cette section décrit comment publier une bibliothèque Java créée avec Gradle sur unCodeArtifactréférentiel.
Tout d'abord, ajoutez lemaven-publish
plugin vers leplugins
section du projetbuild.gradle
fichier.
plugins { id 'java-library' id 'maven-publish' }
Ensuite, ajoutez unpublishing
section du projetbuild.gradle
fichier.
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 } } } }
Lemaven-publish
le plugin génère un fichier POM basé surgroupId
,artifactId
, etversion
spécifiée dans lepublishing
section.
Après ces modifications apportées àbuild.gradle
sont terminés, exécutez la commande suivante pour créer le projet et le télécharger dans le référentiel.
./gradlew publish
Utiliserlist-package-versions
pour vérifier que le package a bien été publié.
aws codeartifact list-package-versions --domain
my_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 version Gradle dans IntelliJ IDEA
Vous pouvez exécuter une version Gradle dans IntelliJ IDEA qui extrait les dépendances deCodeArtifact. Pour vous authentifier auprèsCodeArtifact, vous devez fournir à Gradle unCodeArtifactjeton d'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 parvenez à remplacer ou à compléter le contenu dugradle.properties
fichier.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.properties
fichier.Méthode 3 : Génération d'un nouveau jeton d'authentification pour chaque exécution en exécutant
aws
sous forme de script intégré dansbuild.gradle
. Utilisez 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.