

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.

# Ausführen einer Transformation in der Befehlszeile mit Amazon Q Developer
<a name="run-CLI-transformations"></a>

Gehen Sie wie folgt vor, um Ihren Code in der Befehlszeile mit dem Befehlszeilentool Amazon Q Developer zu transformieren.

## Voraussetzungen
<a name="CLI-transformation-prerequisites"></a>

Bevor Sie eine Transformation über die Befehlszeile starten können, müssen die folgenden Voraussetzungen erfüllt sein:
+ Wenn Sie Ihre Java-Code-Version aktualisieren, erfüllt Ihr Projekt die [Voraussetzungen für ein Upgrade von Java-Versionen mit Amazon Q](code-transformation.md#java-upgrade-prerequisites).
+ Wenn Sie Embedded SQL in eine Java-Anwendung konvertieren, erfüllt Ihre Anwendung die [Voraussetzungen für die Konvertierung von Embedded SQL mit Amazon Q](transform-sql.md#sql-transform-prereqs).
+ Sie haben Python in Ihrer Befehlszeilenumgebung installiert. Sie installieren das Befehlszeilentool wie folgt. Die unterstützte Mindestversion für Python ist 3.12.
+ Sie führen die Transformation unter macOS oder Linux aus. 
+ Die Größe Ihrer Anwendung beträgt 2 GB oder weniger. 
+ Wenn Sie bestimmte Abhängigkeiten vorliegen haben, für die Amazon Q ein Upgrade durchführen soll, haben Sie eine [Upgrade-Datei für Abhängigkeiten](#step-3-dependency-upgrade-file) konfiguriert.

## Schritt 1: Auswählen der Authentifizierungsmethode und Hinzufügen von Berechtigungen
<a name="step-1-permissions-auth"></a>

Sie können IAM Identity Center authentifizieren, um Transformationen in der Befehlszeile auszuführen. Stellen Sie sicher, dass Sie über die entsprechenden Berechtigungen verfügen.

**Anmerkung**  
Vom Kunden verwaltete Schlüssel werden für Transformationen, die über die Befehlszeile ausgeführt werden, nicht unterstützt.

### Berechtigungen hinzufügen
<a name="transform-CLI-add-permissions"></a>

Die IAM-Identität, die mit dem Abonnement von Amazon Q Developer verknüpft ist, das Sie zur Authentifizierung verwenden, muss über die entsprechenden Berechtigungen verfügen, um Transformationen in der Befehlszeile durchzuführen. Bevor Sie fortfahren, stellen Sie sicher, dass Ihre IAM-Identität über die in [Zulassen, dass Benutzer Transformationen in der Befehlszeile ausführen](id-based-policy-examples-users.md#id-based-policy-examples-allow-cli-transformations) definierten Berechtigungen verfügt.

### Authentifizieren bei IAM Identity Center mit einem Abonnement von Amazon Q Developer Pro
<a name="auth-IdC"></a>

Wenn Sie sich bei IAM Identity Center authentifizieren möchten, muss Ihr Administrator für Sie [Amazon Q Developer Pro als Unternehmensbenutzer abonniert](subscribe-users.md) haben und Sie müssen die Start-URL angeben, um sich über Ihr Abonnement zu authentifizieren. Sie oder Ihr Administrator finden die Start-URL in der Konsole von Amazon Q Developer. Weitere Informationen erhalten Sie unter [Finden der Start-URL zur Verwendung mit Amazon Q Developer](manage-account-details.md).

Informationen zum Hinzufügen der erforderlichen Berechtigungen finden Sie unter [Berechtigungen hinzufügen](#transform-CLI-add-permissions).

Sie geben die Start-URL unter [Schritt 4: Konfigurieren und Authentifizieren](#step-4-configure-auth) ein.

## Schritt 2: Installieren des Tools
<a name="step-2-install"></a>



1. [Laden Sie das Amazon-Q-Befehlszeilentool für Transformationen](https://desktop-release.codewhisperer.us-east-1.amazonaws.com/amzn_qct_cli/amzn_qct_cli-1.2.2.zip) herunter und entpacken Sie es.

   Informationen zum Herunterladen einer früheren Version des Befehlszeilentools finden Sie unter [Versionshistorie](transform-CLI-versions.md).

1. Wir empfehlen Ihnen, eine virtuelle Umgebung in Python einzurichten, um das Tool zu installieren. Zum Erstellen einer virtuellen Umgebung öffnen Sie ein Terminalfenster in dem Verzeichnis, in dem Sie das Tool installieren möchten, und führen Sie Folgendes aus:

   ```
   python -m venv qct-cli 
   ```

1. Führen Sie folgenden Befehl aus, um die virtuelle Umgebung zu aktivieren: 

   ```
   source qct-cli/bin/activate 
   ```

1. Wenn Sie das Tool in Ihrer Befehlszeile installieren möchten, führen Sie den folgenden Befehl mit dem Pfad aus, in dem Sie das Tool entpackt haben, basierend auf Ihrer Rechnerarchitektur:

------
#### [ Linux\$1aarch64 ]

   ```
   pip install <path/to/unzipped-tool>/Linux_aarch64/amzn_qct_cli-1.2.2-py3-none-any.whl
   ```

------
#### [ Linux\$1x86\$164 ]

   ```
   pip install <path/to/unzipped-tool>/Linux_x86_64/amzn_qct_cli-1.2.2-py3-none-any.whl
   ```

------
**Anmerkung**  
Wenn Sie eine ältere Version des Befehlszeilentools für Transformationen verwenden, ersetzen Sie `1.2.2` durch die [Version](transform-CLI-versions.md), die Sie heruntergeladen haben.

1. Führen Sie folgenden Befehl aus, um zu überprüfen, ob das Tool installiert wurde:

   ```
   which qct
   ```

## Schritt 3: Erstellen einer Upgrade-Datei für Abhängigkeiten (optional)
<a name="step-3-dependency-upgrade-file"></a>

Sie können Amazon Q eine *Upgrade-Datei für Abhängigkeiten* zur Verfügung stellen. Hierbei handelt es sich um eine YAML-Datei, in der die Abhängigkeiten Ihres Projekts und die Versionen aufgeführt sind, auf die während einer Transformation aktualisiert werden soll. Durch die Bereitstellung einer Upgrade-Datei für Abhängigkeiten können Sie Abhängigkeiten von Drittanbietern und Erstanbietern angeben, von denen Amazon Q sonst möglicherweise nicht weiß, dass sie aktualisiert werden sollen.

Abhängigkeiten von Erstanbietern beziehen sich auf die Bibliotheken, Plugins und Frameworks, die Ihre Organisation verwaltet und die nur lokal oder im privaten Netzwerk Ihrer Organisation verfügbar sind. Amazon Q kann auf Ihre Abhängigkeiten von Erstanbietern zugreifen, wenn es Builds in Ihrer lokalen Umgebung ausführt. Weitere Informationen finden Sie unter [Entwickeln von Code in Ihrer lokalen Umgebung](transform-CLI.md#local-builds). Bei Abhängigkeiten von Drittanbietern handelt es sich um öffentlich verfügbare oder Open-Source-Abhängigkeiten, die nicht nur für Ihr Unternehmen gelten.

Sie können Abhängigkeiten von Erstanbietern, die Sie aktualisieren möchten, in einer YAML-Datei angeben. Amazon Q aktualisiert sie dann während des JDK-Upgrades (z. B. Java 8 auf 17). Sie können nach dem ersten JDK-Upgrade eine separate Transformation (17 auf 17 oder 21 auf 21) initiieren, um Abhängigkeiten von Drittanbietern zu aktualisieren.

Sobald Amazon Q mindestens ein JDK-Upgrade durchgeführt hat, können Sie eine separate Transformation einleiten, um alle Abhängigkeiten von Drittanbietern zu aktualisieren. Alternativ können Sie Abhängigkeiten von Drittanbietern und deren Versionen in einer YAML-Datei angeben, um nur diese Abhängigkeiten während der Upgrade-Transformation der Bibliothek zu aktualisieren.

Amazon Q fordert Sie während der Transformation auf, eine Upgrade-Datei für Abhängigkeiten bereitzustellen. Wenn Sie eine Datei bereitstellen möchten, stellen Sie zunächst sicher, dass Sie sie richtig konfiguriert haben. Die folgenden Felder sind in der YAML-Datei erforderlich:
+ name – der Name der Upgrade-Datei für Abhängigkeiten
+ description (optional) – eine Beschreibung der Upgrade-Datei für Abhängigkeiten und die Angabe, für welche Transformation sie verwendet werden soll
+ dependencyManagement – enthält die Liste der Abhängigkeiten und Plugins, die aktualisiert werden sollen
+ dependencies – enthält den Namen und die Version der zu aktualisierenden Bibliotheken
+ plugins – enthält die Namen und Versionen der zu aktualisierenden Plugins
+ identifier – der Name der Bibliothek, des Plugins oder einer anderen Abhängigkeit
+ targetVersion – die Version der Abhängigkeit, auf die ein Upgrade durchgeführt werden soll
+ versionProperty (optional) – die Version der Abhängigkeit, die Sie definieren, wie sie mit dem Tag `properties` in der Datei `pom.xml` Ihrer Anwendung festgelegt ist
+ originType – gibt an, ob es sich bei der Abhängigkeit um eine Abhängigkeit von Erst- oder Drittanbietern handelt, angegeben durch FIRST\$1PARTY oder THIRD\$1PARTY.

Im Folgenden finden Sie ein Beispiel für eine YAML-Upgrade-Datei für Abhängigkeiten und die erforderliche Konfiguration, die Amazon Q analysieren muss:

```
name: dependency-upgrade
  
description: "Custom dependency version management for Java migration from JDK 8/11/17 to JDK 17/21"
  
  
dependencyManagement:
  
  dependencies:
  
    - identifier: "com.example:library1"
  
      targetVersion: "2.1.0"
  
      versionProperty: "library1.version"  # Optional
  
      originType: "FIRST_PARTY"   
  
    - identifier: "com.example:library2"
  
      targetVersion: "3.0.0"
  
      originType: "THIRD_PARTY"
  
  plugins:
  
    - identifier: "com.example.plugin"
  
      targetVersion: "1.2.0"
  
      versionProperty: "plugin.version"  # Optional
            
      originType: "THIRD_PARTY"
```

## Schritt 4: Konfigurieren und Authentifizieren
<a name="step-4-configure-auth"></a>

Bevor Sie mit einer Transformation beginnen können, müssen Sie sich bei IAM Identity Center authentifizieren und Konfigurationsdetails für Ihre Transformation angeben. 

1. Führen Sie den folgenden Befehl aus, um den Transformationskonfigurationsprozess zu starten:

   ```
   qct configure
   ```

1. Sie werden aufgefordert, einen JDK-Pfad für jede unterstützte Java-Version einzugeben. Sie müssen nur den Pfad zu JDK der Quellversion Ihrer Java-Anwendung angeben, nicht der Zielversion.

1. Als Nächstes werden Sie zur Authentifizierung bei IAM Identity Center aufgefordert, die Start-URL für Ihr Abonnementprofil von Amazon Q Developer Pro einzugeben.

   Geben Sie dann den Ort, AWS-Region an dem Sie abonniert wurden, im folgenden Format ein:`us-east-1`. Eine Liste der unterstützten -Regionen finden Sie unter [Unterstützte Regionen](regions.md). Eine Liste der Regionscodes finden Sie unter [Regionale Endpunkte](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints) in der *Anleitung für Allgemeine AWS-Referenz *. 

1. Ihre Konfigurationseinstellungen werden in einer Datei configuration.ini gespeichert. 

## Schritt 5: Ausführen einer Transformation
<a name="step-5-run-transformation"></a>

Wählen Sie die Art der Transformation aus, die Sie durchführen, um die erforderliche Konfiguration und Befehle zu sehen. 

**Anmerkung**  
Schalten Sie Ihren lokalen Computer während der Codetransformation nicht aus, da für den clientseitigen Build eine stabile Netzwerkverbindung erforderlich ist.

------
#### [ Java upgrade ]

**Ändern des Transformationsplans**

Bei Upgrades der Java-Version generiert Amazon Q einen Transformationsplan, den Sie vor Beginn der Transformation überprüfen können. Sie haben die Möglichkeit, die folgenden Planänderungen anzufordern:
+ Die Bibliotheken, die Amazon Q aktualisieren soll, können Sie in der Liste, die im Plan enthalten ist, ändern.
  + Beispiele für Prompts:
    + Nur <dependency1>, <dependency2> und <dependency5> aktualisieren
    + <dependency1> oder <dependency2> nicht aktualisieren
+ Die Zielversion, auf die eine Bibliothek aktualisiert werden soll
  + Beispiele für Prompts:
    + <dependency> stattdessen auf diese Version <version> aktualisieren
+ Welche Schritte Amazon Q ausführen soll
  + Beispiele für Prompts:
    + Nur die Schritte 1–7 ausführen
    + Die Schritte 5–9 nicht ausführen
+ Zusätzliche Abhängigkeiten für das Upgrade hinzufügen (dies ist nur eine Option beim Upgrade auf eine neuere JDK-Version)
  + Beispiele für Prompts:
    + <dependency1> auch auf <version2> aktualisieren

**Aktualisieren von Java-Code**

1. Führen Sie den folgenden Befehl aus, um eine Transformation für ein Java-Upgrade zu starten. Ersetzen Sie `<path-to-folder>` durch den Pfad zu dem Ordner mit dem Code, den Sie transformieren, und `<your-target-java-version>` entweder durch `JAVA_17` oder `JAVA_21`.

   ```
   qct transform --source_folder <path-to-folder>
       --target_version <your-target-java-version>
   ```

   Zusätzliche Befehlsoptionen: 
   + Wenn Sie Abhängigkeiten für das Upgrade angeben, fügen Sie die Option `--dependency_upgrade_file` mit dem Pfad zu Ihrer Upgrade-Datei für Abhängigkeiten hinzu.
   + Wenn Sie den Transformationsplan nicht überprüfen oder aktualisieren möchten, fügen Sie Ihrem Befehl das Flag `--no-interactive` hinzu. Amazon Q wird Sie weder um Feedback zum Plan bitten noch haben Sie die Möglichkeit, Änderungen anzufordern.

1. Ihre Maven-Version wird verifiziert, bevor die Transformation beginnt. Wenn Sie über die unterstützte Mindestversion verfügen, erhalten Sie die folgende Ausgabe: 

   ```
   Running command: mvn --version at: path/to/current/directory 
   Your Maven version is supported for transformations.
   ```

   Wenn Sie keine unterstützte Version von Maven haben, müssen Sie diese aktualisieren, um fortzufahren. Weitere Informationen hierzu finden Sie unter [Voraussetzungen](#CLI-transformation-prerequisites). 

1. Wenn Sie das Flag `--no-interactive` nicht hinzugefügt haben, werden Sie von Amazon Q aufgefordert, Feedback zum Transformationsplan zu geben. Sie können die Änderungen, die Sie vornehmen möchten, in natürlicher englischer Sprache erläutern. Amazon Q aktualisiert den Plan, sofern er die von Ihnen angeforderten Änderungen unterstützt. 

1. Amazon Q beginnt mit der Transformation. Es werden während der gesamten Transformation Statusaktualisierungen ausgegeben. Wenn der Vorgang abgeschlossen ist, gibt Amazon Q den Pfad an, in dem die Transformationsergebnisse, Protokolle und Konfigurationsdateien ausgegeben werden. 

   Ihr aktualisierter Code wird dem neuen Branch zugewiesen, den Amazon Q erstellt hat. Amazon Q überträgt den Code in einem oder mehreren Commits, je nachdem, welche Auswahl Sie bei der Ausführung von `qct configure` getroffen haben. 

1. Wenn Sie nach dem Upgrade Ihrer Java-Version eine weitere Transformation ausführen, starten Sie die zweite Transformation in dem Branch, in dem Sie die Änderungen aus der ersten Transformation festgeschrieben haben. 

------
#### [ SQL conversion ]

Bevor Sie beginnen, lesen Sie den Abschnitt [Konvertieren von Embedded SQL in Java-Anwendungen mit Amazon Q Developer](transform-sql.md), damit Sie die Voraussetzungen für diese Art von Transformation verstehen. 

1. Wenn Sie Embedded SQL konvertieren möchten, müssen Sie zunächst eine YAML-Datei erstellen, die den Pfad zur Schema-Metadatendatei aus Ihrer [AWS DMS -Schemakonvertierung](https://docs.aws.amazon.com/dms/latest/sbs/schema-conversion-oracle-postgresql.html) enthält.

   Für die Datei ist folgendes Format erforderlich: 

   ```
   schema_conv_metadata_path: <path-to-metadata-zip-file>
   ```

1. Führen Sie den folgenden Befehl aus, um eine Transformation für eine SQL-Konvertierung zu starten. Ersetzen Sie `<path-to-folder>` durch den Pfad zu dem Ordner mit dem Code, den Sie transformieren, und `<path-to-sql-config-file>` durch den Pfad zu der YAML-Datei, die Sie in Schritt 1 erstellt haben.

   ```
   qct transform --source_folder <path-to-folder>
       --sql_conversion_config_file <path-to-sql-config-file>
   ```

1. Wenn Amazon Q mehrere Schemata in Ihrer Schema-Metadatendatei findet, wird die Transformation gestoppt und eine Liste der erkannten Schemata bereitgestellt. Wählen Sie aus, welches Schema für die SQL-Konvertierung verwendet werden soll, und fügen Sie dann der YAML-Datei ein neues Feld `schema: <schema-name>` hinzu. 

1. Amazon Q beginnt mit der Transformation. Es werden während der gesamten Transformation Statusaktualisierungen ausgegeben. Wenn der Vorgang abgeschlossen ist, gibt Amazon Q den Pfad an, in dem die Transformationsergebnisse, Protokolle und Konfigurationsdateien ausgegeben werden. 

   Ihr aktualisierter Code wird dem neuen Branch zugewiesen, den Amazon Q erstellt hat.

------

## Anhalten oder Abbrechen einer Transformation
<a name="pause-cancel-CLI-transformations"></a>

Sie können wählen, ob Sie Ihren aktuellen Transformationsauftrag anhalten oder abbrechen möchten. Sie können einen Transformationsauftrag für bis zu 12 Stunden anhalten, bevor Sie ihn fortsetzen können.

**So halten Sie einen Codetransformationsauftrag an oder brechen ihn ab**

1. Drücken Sie in Ihrem CLI-Terminal **Strg\$1C** auf Ihrer Tastatur.

1. Wählen Sie aus, ob Sie Ihre Transformation anhalten oder abbrechen möchten.
   + Geben Sie `1` ein, wenn Sie den Codetransformationsauftrag anhalten möchten. Sie können den Auftrag innerhalb von 12 Stunden wieder aufnehmen, um die Codetransformation mit dem folgenden QCT-Befehl fortzusetzen: ``qct transform --source_folder=≤/Path/Given/Originally/To/QCT>``
   + Geben Sie `2` ein, wenn Sie den Codetransformationsauftrag abbrechen möchten.