Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
CodeArtifact Mit Gradle verwenden
Nachdem Sie das CodeArtifact Authentifizierungstoken in einer Umgebungsvariablen gespeichert haben, wie unter Ein Authentifizierungstoken mithilfe einer Umgebungsvariablen übergeben beschrieben, folgen Sie diesen Anweisungen, um Maven-Pakete aus einem Repository zu konsumieren und neue Pakete in einem Repository zu veröffentlichen. CodeArtifact
Themen
Abhängigkeiten abrufen
Verwenden Sie das folgende Verfahren, um Abhängigkeiten aus CodeArtifact einem Gradle-Build abzurufen.
Um Abhängigkeiten aus CodeArtifact einem Gradle-Build abzurufen
Wenn nicht, erstellen und speichern Sie ein CodeArtifact Authentifizierungstoken in einer Umgebungsvariablen, indem Sie das Verfahren unter befolgen. Übergeben Sie ein Authentifizierungstoken mithilfe einer Umgebungsvariablen
-
Fügen Sie dem
maven
Abschnitt in derbuild.gradle
Projektdatei einenrepositories
Abschnitt hinzu.maven { url 'https://
my_domain
-111122223333
.d.codeartifact.region
.amazonaws.com/maven/my_repo
/' credentials { username "aws" password System.env.CODEARTIFACT_AUTH_TOKEN } }Das
url
Beispiel oben ist der Endpunkt Ihres CodeArtifact Repositorys. Gradle verwendet den Endpunkt, um eine Verbindung zu Ihrem Repository herzustellen. Im Beispielmy_domain
ist dies der Name Ihrer Domain,111122223333
die ID des Eigentümers der Domain undmy_repo
der Name Ihres Repositorys. Sie können den Endpunkt eines Repositorys mit demget-repository-endpoint
AWS CLI Befehl abrufen.Zum Beispiel mit einem Repository namens
my_repo
innerhalb einer Domain mit dem Namenmy_domain
, der Befehl lautet wie folgt:aws codeartifact get-repository-endpoint --domain
my_domain
--domain-owner111122223333
--repositorymy_repo
--format mavenDer
get-repository-endpoint
Befehl gibt den Repository-Endpunkt zurück:url 'https://
my_domain
-111122223333
.d.codeartifact.region
.amazonaws.com/maven/my_repo
/'Das
credentials
Objekt im vorherigen Beispiel enthält das CodeArtifact Authentifizierungstoken, das Sie in Schritt 1 erstellt haben und das Gradle zur Authentifizierung verwendet. CodeArtifactAnmerkung
Um einen Dual-Stack-Endpunkt zu verwenden, verwenden Sie den Endpunkt.
codeartifact.
region
.on.aws (Optional) — Um das CodeArtifact Repository als einzige Quelle für Ihre Projektabhängigkeiten zu verwenden, entfernen Sie alle anderen Abschnitte in
repositories
von.build.gradle
Wenn Sie mehr als ein Repository haben, durchsucht Gradle jedes Repository nach Abhängigkeiten in der Reihenfolge, in der sie aufgelistet sind.Nachdem Sie das Repository konfiguriert haben, können Sie dem
dependencies
Abschnitt Projektabhängigkeiten mit der Standard-Gradle-Syntax hinzufügen.dependencies { implementation 'com.google.guava:guava:27.1-jre' implementation 'commons-cli:commons-cli:1.4' testImplementation 'org.testng:testng:6.14.3' }
Plugins abrufen
Standardmäßig löst Gradle Plugins aus dem öffentlichen Gradle
Um Plugins aus einem CodeArtifact Repository abzurufen
Falls nicht, erstellen und speichern Sie ein CodeArtifact Authentifizierungstoken in einer Umgebungsvariablen, indem Sie das Verfahren unter befolgen. Übergeben Sie ein Authentifizierungstoken mithilfe einer Umgebungsvariablen
Fügen Sie Ihrer
settings.gradle
Datei einenpluginManagement
Block hinzu. DerpluginManagement
Block muss vor allen anderen Anweisungen in erscheinensettings.gradle
, siehe den folgenden Ausschnitt: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 } } } }
Dadurch wird sichergestellt, dass Gradle Plugins aus dem angegebenen Repository auflöst. Das Repository muss über ein Upstream-Repository mit einer externen Verbindung zum Gradle-Plugin-Portal (z. B.gradle-plugins-store
) verfügen, damit die häufig benötigten Gradle-Plugins für den Build verfügbar sind. Weitere Informationen finden Sie in der Gradle-Dokumentation.
Veröffentlichen Sie Artefakte
In diesem Abschnitt wird beschrieben, wie Sie eine mit Gradle erstellte Java-Bibliothek in einem CodeArtifact Repository veröffentlichen.
Fügen Sie zunächst das maven-publish
Plugin zum plugins
Abschnitt der build.gradle
Projektdatei hinzu.
plugins { id 'java-library' id 'maven-publish' }
Als Nächstes fügen Sie der build.gradle
Projektdatei einen publishing
Abschnitt hinzu.
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 } } } }
Das maven-publish
Plugin generiert eine POM DateigroupId
, die auf dem, und basiertartifactId
, das im publishing
Abschnitt version
angegeben ist.
Wenn diese Änderungen abgeschlossen build.gradle
sind, führen Sie den folgenden Befehl aus, um das Projekt zu erstellen und es in das Repository hochzuladen.
./gradlew publish
Verwenden Sie diese Option, list-package-versions
um zu überprüfen, ob das Paket erfolgreich veröffentlicht wurde.
aws codeartifact list-package-versions --domain
my_domain
--domain-owner111122223333
--repositorymy_repo
--formatmaven
\ --namespacecom.company.framework
--packagemy-package-name
Beispielausgabe:
{ "format": "
maven
", "namespace": "com.company.framework
", "package": "example
", "versions": [ { "version": "1.0", "revision": "REVISION-SAMPLE-1-C7F4S5E9B772FC", "status": "Published" } ] }
Weitere Informationen finden Sie in den folgenden Themen auf der Gradle-Website:
Führen Sie einen Gradle-Build in IntelliJ aus IDEA
Sie können einen Gradle-Build in IntelliJ ausführenIDEA, der Abhängigkeiten abruft. CodeArtifact Um sich zu authentifizieren CodeArtifact, müssen Sie Gradle ein Autorisierungstoken zur Verfügung stellen. CodeArtifact Es gibt drei Methoden, um ein Authentifizierungstoken bereitzustellen.
Methode 1: Speichern des Authentifizierungstokens in.
gradle.properties
Verwenden Sie diese Methode, wenn Sie den Inhalt der Datei überschreiben oder ihn erweitern können.gradle.properties
Methode 2: Speichern des Authentifizierungstokens in einer separaten Datei. Verwenden Sie diese Methode, wenn Sie Ihre
gradle.properties
Datei nicht ändern möchten.Methode 3: Generieren eines neuen Authentifizierungstokens für jeden Lauf, indem es
aws
als Inline-Skript inbuild.gradle
ausgeführt wird. Verwenden Sie diese Methode, wenn Sie möchten, dass das Gradle-Skript bei jedem Lauf ein neues Token abruft. Das Token wird nicht im Dateisystem gespeichert.