

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.

# Publizieren mit curl
<a name="maven-curl"></a>

In diesem Abschnitt wird gezeigt, wie Sie den HTTP-Client verwenden`curl`, um Maven-Artefakte in einem CodeArtifact Repository zu veröffentlichen. Das Veröffentlichen von Artefakten mit `curl` kann nützlich sein, wenn Sie den Maven-Client nicht in Ihren Umgebungen haben oder installieren möchten.

**Veröffentlichen Sie ein Maven-Artefakt mit `curl`**

1. Rufen Sie ein CodeArtifact Autorisierungstoken ab, indem Sie die Schritte unter befolgen [Übergeben Sie ein Authentifizierungstoken mithilfe einer Umgebungsvariablen](tokens-authentication.md#env-var) und zu diesen Schritten zurückkehren.

1. Verwenden Sie den folgenden `curl` Befehl, um die JAR in einem CodeArtifact Repository zu veröffentlichen:

   Ersetzen Sie in jedem der `curl` Befehle in diesem Verfahren die folgenden Platzhalter:
   + Ersetzen Sie es *my\$1domain* durch Ihren CodeArtifact Domainnamen.
   + *111122223333*Ersetzen Sie es durch die ID des Inhabers Ihrer CodeArtifact Domain.
   + *us-west-2*Ersetzen Sie durch die Region, in der sich Ihre CodeArtifact Domain befindet.
   + Ersetze es *my\$1repo* durch deinen CodeArtifact Repository-Namen.

   ```
   curl --request PUT https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/maven/my_repo/com/mycompany/app/my-app/1.0/my-app-1.0.jar \
        --user "aws:$CODEARTIFACT_AUTH_TOKEN" --header "Content-Type: application/octet-stream" \
        --data-binary @my-app-1.0.jar
   ```
**Wichtig**  
Sie müssen dem Wert des `--data-binary` Parameters ein `@` Zeichen voranstellen. Wenn Sie den Wert in Anführungszeichen setzen, `@` muss er innerhalb der Anführungszeichen stehen.

1. Verwenden Sie den folgenden `curl` Befehl, um das POM in einem CodeArtifact Repository zu veröffentlichen:

   ```
   curl --request PUT https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/maven/my_repo/com/mycompany/app/my-app/1.0/my-app-1.0.pom \
        --user "aws:$CODEARTIFACT_AUTH_TOKEN" --header "Content-Type: application/octet-stream" \
        --data-binary @my-app-1.0.pom
   ```

1. Zu diesem Zeitpunkt befindet sich das Maven-Artefakt in Ihrem CodeArtifact Repository mit dem Status. `Unfinished` Um das Paket nutzen zu können, muss es sich im `Published` Status befinden. Sie können das Paket von `Unfinished` nach verschieben, `Published` indem Sie entweder eine `maven-metadata.xml` Datei in Ihr Paket hochladen oder die [UpdatePackageVersionsStatus API](https://docs.aws.amazon.com/codeartifact/latest/APIReference/API_UpdatePackageVersionsStatus.html) aufrufen, um den Status zu ändern.

   1.  Option 1: Verwenden Sie den folgenden `curl` Befehl, um Ihrem Paket eine `maven-metadata.xml` Datei hinzuzufügen: 

      ```
      curl --request PUT https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/com/mycompany/app/my-app/maven-metadata.xml \
           --user "aws:$CODEARTIFACT_AUTH_TOKEN" --header "Content-Type: application/octet-stream" \
           --data-binary @maven-metadata.xml
      ```

      Das Folgende ist ein Beispiel für den Inhalt einer `maven-metadata.xml` Datei:

      ```
      <metadata modelVersion="1.1.0">
          <groupId>com.mycompany.app</groupId>
          <artifactId>my-app</artifactId>
          <versioning>
              <latest>1.0</latest>
              <release>1.0</release>
              <versions>
                  <version>1.0</version>
              </versions>
              <lastUpdated>20200731090423</lastUpdated>
          </versioning>
      </metadata>
      ```

   1.  Option 2: Aktualisieren Sie den Paketstatus `Published` mit der `UpdatePackageVersionsStatus` API auf. 

      ```
      aws codeartifact update-package-versions-status \
          --domain my_domain \
          --domain-owner 111122223333 \
          --repository my_repo \
          --format maven \
          --namespace com.mycompany.app \
          --package my-app \
          --versions 1.0 \
          --target-status Published
      ```

Wenn Sie nur über die JAR-Datei eines Artefakts verfügen, können Sie eine verbrauchbare Paketversion in einem CodeArtifact Repository veröffentlichen, indem Sie. `mvn` Dies kann nützlich sein, wenn Sie keinen Zugriff auf den Quellcode oder POM des Artefakts haben. Details dazu finden Sie unter [Veröffentlichen Sie Artefakte von Drittanbietern](maven-mvn.md#publishing-third-party-artifacts).