Ausführen einer Transformation in der Befehlszeile mit Amazon Q Developer - Amazon Q Developer

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

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

Voraussetzungen

Bevor Sie eine Transformation über die Befehlszeile starten können, müssen die folgenden Voraussetzungen erfüllt sein:

Schritt 1: Auswählen der Authentifizierungsmethode und Hinzufügen von Berechtigungen

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

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 definierten Berechtigungen verfügt.

Authentifizieren bei IAM Identity Center mit einem Abonnement von Amazon Q Developer Pro

Wenn Sie sich bei IAM Identity Center authentifizieren möchten, muss Ihr Administrator für Sie Amazon Q Developer Pro als Unternehmensbenutzer abonniert 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.

Informationen zum Hinzufügen der erforderlichen Berechtigungen finden Sie unter Berechtigungen hinzufügen.

Sie geben die Start-URL unter Schritt 4: Konfigurieren und Authentifizieren ein.

Schritt 2: Installieren des Tools

  1. Laden Sie das Amazon-Q-Befehlszeilentool für Transformationen herunter und entpacken Sie es.

    Informationen zum Herunterladen einer früheren Version des Befehlszeilentools finden Sie unter Versionshistorie.

  2. 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
  3. Führen Sie folgenden Befehl aus, um die virtuelle Umgebung zu aktivieren:

    source qct-cli/bin/activate
  4. 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_aarch64
    pip install <path/to/unzipped-tool>/Linux_aarch64/amzn_qct_cli-1.2.1-py3-none-any.whl
    Linux_x86_64
    pip install <path/to/unzipped-tool>/Linux_x86_64/amzn_qct_cli-1.2.1-py3-none-any.whl
    Anmerkung

    Wenn Sie eine ältere Version des Befehlszeilentools für Transformationen verwenden, ersetzen Sie 1.2.1 durch die Version, die Sie heruntergeladen haben.

  5. 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)

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. 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_PARTY oder THIRD_PARTY.

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

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
  2. 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.

  3. 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. Eine Liste der Regionscodes finden Sie unter Regionale Endpunkte in der Anleitung für Allgemeine AWS-Referenz .

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

Schritt 5: Ausführen einer Transformation

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.

  2. 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.

  3. 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.

  4. 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.

  5. 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, 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 enthält.

    Für die Datei ist folgendes Format erforderlich:

    schema_conv_metadata_path: <path-to-metadata-zip-file>
  2. 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>
  3. 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.

  4. 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

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+C auf Ihrer Tastatur.

  2. 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.