Aktualisieren von Java-Versionen 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.

Aktualisieren von Java-Versionen mit Amazon Q Developer

Amazon Q Developer kann Ihre Java-Anwendungen in der integrierten Entwicklungsumgebung (IDE) auf neuere Sprachversionen aktualisieren. Zu den Änderungen, die Amazon Q zur Aktualisierung Ihres Codes vornehmen kann, gehören die Aktualisierung veralteter Codekomponenten APIs sowie die Aktualisierung von Bibliotheken, Frameworks und anderen Abhängigkeiten in Ihrem Code.

Zum Transformieren Ihres Codes erstellt Amazon Q Ihren Code zunächst in der Version der Ausgangssprache und überprüft, ob er über die für die Transformation erforderlichen Informationen verfügt. Nachdem Amazon Q Ihren Code erfolgreich transformiert hat, überprüfen und akzeptieren Sie die Änderungen in der Änderungsansicht Ihrer IDE. Da Amazon Q Developer die minimalen Änderungen vornimmt, die erforderlich sind, um Ihren aktualisierten Code mit dem Ziel-JDK kompatibel zu machen, ist eine zusätzliche Transformation erforderlich, um die Bibliotheken und Abhängigkeiten Ihres Projekts zu aktualisieren. Weitere Informationen dazu, wie Amazon Q Ihren Code transformiert, finden Sie unter So transformiert Amazon Q Developer Code für Upgrades von Java-Sprachen.

Unterstützte Java-Upgrades und IDEs

Amazon Q unterstützt derzeit die folgenden Java-Quellcode- und Zielversionen für Transformationen. Die Transformation von Code in dieselbe Java-Version beinhaltet das Aktualisieren von Bibliotheken und anderen Abhängigkeiten in der Quellcodeversion.

Unterstützte Java-Upgrades
Quellcodeversion Unterstützte Zielversionen
Java 8 Java 17 und Java 21
Java 11 Java 17 und Java 21
Java 17 Java 17 und Java 21
Java 21

Java21

Amazon Q unterstützt Java-Upgrades in den folgenden Bereichen IDEs:

  • Module in JetBrains IDEs

  • Projekte und Workspaces in Visual Studio Code

Schritt 1: Voraussetzungen

Bevor Sie fortfahren, sollten Sie sicherstellen, dass Sie die in Einrichten von Amazon Q in Ihrer IDE beschriebenen Schritte ausgeführt habe.

Überprüfen Sie vor Beginn eines Codetransformationsauftrags, ob die folgenden Voraussetzungen erfüllt sind:

  • Ihr Projekt ist in einer unterstützten Java-Version geschrieben und baut auf Maven auf.

  • Ihr Projekt wird mit Maven erfolgreich in Ihrer IDE erstellt. Maven 3.8 oder höher wird derzeit unterstützt.

  • Ihr Projekt-Quell-JDK ist lokal verfügbar und entspricht der Version Ihres Quellcodes. Wenn Sie beispielsweise Java-8-Code transformieren, sollte Ihre lokale JDK-Installation JDK 8 sein.

  • Ihr Projekt wird in 55 Minuten oder weniger erstellt.

  • Ihr Projekt ist korrekt konfiguriert und die richtige JDK-Version ist angegeben. Weitere Informationen finden Sie unter Schritt 2: Konfigurieren Ihres Projekts.

  • Ihr Projekt benötigt keinen Zugriff auf Ressourcen in Ihrem privaten Netzwerk, einschließlich einer Virtual Private Cloud (VPC) oder eines lokalen Netzwerks. Wenn Ihr Projekt beispielsweise Modultests enthält, die eine Verbindung mit einer Datenbank in Ihrem Netzwerk herstellen, schlägt die Transformation fehl.

  • Ihr Projekt verwendet keine Plugins, die andere Sprachen als Java in Ihr Java-Projekt packen. Wenn Ihr Projekt beispielsweise zusätzlich zu Ihrem Java-Quellcode den frontend-maven-pluginfür die Ausführung von JavaScript Frontend-Code verwendet, schlägt die Transformation fehl.

  • Ihr lokales Netzwerk ermöglicht Uploads in Amazon-S3-Buckets, die Amazon Q zur Transformation Ihres Codes verwendet. Weitere Informationen erhalten Sie unter Zulassen des Zugriffs auf Amazon-S3-Buckets in Datenperimetern.

  • Ihre Anwendung verwendet nur UTF-8-Zeichen. Wenn Ihre Anwendung keine UTF-8-Zeichen verwendet, versucht Amazon Q trotzdem, Ihren Code zu transformieren.

Schritt 2: Konfigurieren Ihres Projekts

Verwenden Sie zur Konfiguration Ihres Projekts die folgenden Informationen für die von Ihnen verwendete IDE.

Konfigurieren eines Projekts in JetBrains

Wenn Sie Ihr Projekt in JetBrains konfigurieren möchten, müssen Sie gegebenenfalls die folgenden Projekt- und Moduleinstellungen angeben.

Wenn Ihre Module dasselbe JDK und dieselbe Sprachebene wie Ihr Projekt verwenden, müssen Sie die Moduleinstellungen nicht aktualisieren.

  • Projekt-SDK – das JDK, das zum Kompilieren Ihres Projekts verwendet wurde

  • Sprachebene des Projekts – die in Ihrem Projekt verwendete Java-Version

  • Modul-SDK – das JDK, das zum Kompilieren Ihres Moduls verwendet wurde

  • Sprachebene des Moduls – die Java-Version, die in Ihrem Modul verwendet wird

  • Maven Runner JRE – das JDK, mit dem Sie Ihr Modul erstellen

Aktualisieren der Projekt- und Moduleinstellungen

Gehen Sie wie folgt vor, um Ihr SDK und die Einstellungen für die Sprachebene für Ihr Projekt oder Modul zu aktualisieren:

  1. Wählen Sie in Ihrer JetBrains-IDE File und dann Project Structure aus.

  2. Das Fenster „Project Structure“ wird geöffnet. Wählen Sie unter Project Settings die Option Project aus.

    1. Wenn Sie Ihr Projekt-JDK aktualisieren möchten, wählen Sie eine Option aus der Dropdown-Liste neben SDK aus.

    2. Wenn Sie Ihre Projektsprache aktualisieren möchten, wählen Sie eine Option aus der Dropdown-Liste neben Language Level aus.

  3. Wählen Sie unter Project Settings die Option Modules aus.

    1. Wenn Sie Ihr Modul-JDK aktualisieren möchten, wählen Sie eine Option aus der Dropdown-Liste neben SDK aus.

    2. Wenn Sie Ihre Modulsprache aktualisieren möchten, wählen Sie eine Option aus der Dropdown-Liste neben Language Level aus.

Weitere Informationen erhalten Sie unter Project structure settings und Module structure settings in der JetBrains-Dokumentation.

Aktualisieren von Maven-Einstellungen

Gehen Sie wie folgt vor, um Ihre Maven Runner JRE zu aktualisieren:

  1. Wählen Sie in Ihrer JetBrains-IDE das Zahnradsymbol und dann im angezeigten Menü die Option Settings aus.

  2. Wählen Sie im Fenster Settings die Optionen Build, Execution, Deployment, dann Build Tools, Maven und schließlich Runner aus.

  3. Wählen Sie im Feld „JRE“ das JDK aus, das zum Erstellen des Moduls verwendet wurde, das Sie transformieren.

Konfigurieren eines Projekts in VS Code

Damit Sie Ihr Projekt in VS Code konfigurieren können, muss es Folgendes enthalten:

  • Eine Datei pom.xml im Projektstammordner

  • Eine Datei .java im Projektverzeichnis

Wenn Ihr Projekt eine ausführbare Maven-Wrapper-Datei (mvnw für macOS oder mvnw.cmd für Windows) enthält, stellen Sie sicher, dass sie sich im Stammverzeichnis des Projekts befindet. Amazon Q verwendet den Wrapper, sodass keine weitere Maven-Konfiguration erforderlich ist.

Wenn Sie keinen Maven Wrapper verwenden, installieren Sie Maven. Weitere Informationen erhalten Sie unter Installing Apache Maven in der Dokumentation für Apache Maven.

Fügen Sie Maven nach der Installation Ihrer PATH-Variablen hinzu. Weitere Informationen erhalten Sie unter Wie füge ich Maven meinem PATH hinzu?. Ihre Java-runtime-Variable sollte auch auf ein JDK und nicht auf eine JRE verweisen. Führen Sie mvn -v aus, um zu überprüfen, ob Ihre Konfiguration korrekt ist. Die Ausgabe sollte Ihre Maven-Version und die runtime-Variable zeigen, die auf den Pfad zu Ihrem JDK verweist.

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: Transformieren Ihres Codes

Zum Testen Ihrer IDE-Einrichtung laden Sie das Beispielprojekt herunter, entpacken es und führen die folgenden Schritte für Ihre IDE aus. Wenn Sie die vorgeschlagenen Änderungen und die Zusammenfassung der Transformation einsehen können, sind Sie bereit, Ihr eigenes Codeprojekt zu transformieren. Wenn die Transformation fehlschlägt, ist Ihre IDE nicht richtig konfiguriert. Zum Beheben von Konfigurationsproblemen lesen Sie Schritt 2: Konfigurieren Ihres Projekts und Fehlerbehebung.

Anmerkung

Schalten Sie Ihren lokalen Computer während der Codetransformation nicht aus, schließen Sie ihn nicht und versetzen Sie ihn auch nicht in den Standbymodus. Die Initial- und Validierungs-Builds verwenden die clientseitige Umgebung, für die eine stabile Netzwerkverbindung erforderlich ist.

Gehen Sie für Ihre IDE wie folgt vor, um die Sprachenversion Ihres Codeprojekts oder -moduls zu aktualisieren.

JetBrains
  1. Öffnen Sie das Modul, für das Sie in JetBrains ein Upgrade durchführen möchten. Stellen Sie sicher, dass Sie Ihr Projekt erfolgreich in der IDE erstellt haben.

  2. Wählen Sie das Amazon Q-Logo und bitten Sie Amazon Q, Ihre Anwendung im sich öffnenden Chat-Panel zu transformieren.

  3. Ein Popup-Fenster Transform your application wird angezeigt. Wählen Sie in der Dropdown-Liste das Projekt aus, das Sie aktualisieren möchten, und wählen Sie dann Transform aus.

  4. Amazon Q fordert Sie auf, eine Upgrade-Datei für Abhängigkeiten bereitzustellen. Wenn Sie ein YAML mit den Abhängigkeiten und der Version konfiguriert haben, auf die Sie aktualisieren möchten, fügen Sie Ihre Datei hinzu. Amazon Q validiert die Datei, um sicherzustellen, dass sie korrekt konfiguriert ist. Wenn Sie eine Fehlermeldung erhalten, überprüfen Sie das Format und die erforderlichen Felder, die unter Schritt 3: Erstellen einer Upgrade-Datei für Abhängigkeiten (optional) beschrieben sind.

  5. Amazon Q beginnt mit der Transformation. Sie können den Fortschritt auf der Registerkarte Transformation details einsehen.

  6. Nach Abschluss der Transformation können Sie den aktualisierten Code überprüfen, bevor Sie Ihr Projekt aktualisieren. Wenn Sie den neuen Code anzeigen möchten, gehen Sie zur Registerkarte Transformation details und wählen Sie dann View diff aus. Wählen Sie im daraufhin angezeigten Fenster Apply patch eine Datei aus, um eine Vergleichsansicht mit Ihrem Quellcode und dem aktualisierten Code zu öffnen.

  7. Wenn Sie die von Amazon Q vorgenommenen Änderungen akzeptieren möchten, wählen Sie View diff aus, um das Fenster Apply patch zu öffnen. Wählen Sie alle aktualisierten Dateien aus und klicken Sie auf OK, um Ihr Projekt an Ort und Stelle zu aktualisieren.

  8. Wenn Sie Einzelheiten darüber, wie Ihr Code aktualisiert wurde, und Vorschläge für die nächsten Schritte erhalten möchten, wählen Sie auf der Registerkarte Transformation details die Option View transformation summary aus.

Visual-Studio-Code
  1. Öffnen Sie das Projekt oder den Workspace, das bzw. den Sie in VS Code aktualisieren möchten. Stellen Sie sicher, dass Sie Ihr Projekt erfolgreich in der IDE erstellt haben.

  2. Wählen Sie das Amazon Q-Logo und bitten Sie Amazon Q, Ihre Anwendung im sich öffnenden Chat-Panel zu transformieren.

  3. Wählen Sie das Projekt, das Sie aktualisieren möchten, in der Suchleiste oben in der IDE aus.

  4. Wenn Amazon Q die Version Ihres Quellcodes nicht finden kann, werden Sie aufgefordert, Ihre Codeversion auszuwählen. Wählen Sie die Version aus, in der Ihr Quellcode geschrieben ist, und klicken Sie dann im Popup-Fenster auf die Option Transform, um fortzufahren.

  5. Geben Sie den JAVA_HOME-Pfad zu Ihrem JDK ein, wenn Sie dazu aufgefordert werden. Weitere Informationen erhalten Sie unter Konfigurieren Ihres VS Code-Projekts.

  6. Amazon Q fordert Sie auf, eine Upgrade-Datei für Abhängigkeiten bereitzustellen. Wenn Sie ein YAML mit den Abhängigkeiten und der Version konfiguriert haben, auf die Sie aktualisieren möchten, fügen Sie Ihre Datei hinzu. Amazon Q validiert die Datei, um sicherzustellen, dass sie korrekt konfiguriert ist. Wenn Sie eine Fehlermeldung erhalten, überprüfen Sie das Format und die erforderlichen Felder, die unter Schritt 3: Erstellen einer Upgrade-Datei für Abhängigkeiten (optional) beschrieben sind.

  7. Amazon Q beginnt mit der Transformation. Sie können den Fortschritt auf der Registerkarte Transformation Hub einsehen.

  8. Nach Abschluss der Transformation wird die Registerkarte Proposed Changes geöffnet. Wenn Sie den aktualisierten Code überprüfen möchten, bevor Sie ein Upgrade für Ihr Projekt durchführen, wählen Sie Download proposed changes aus. Wählen Sie eine Datei aus, um eine Vergleichsansicht mit Ihrem Quellcode und dem aktualisierten Code zu öffnen.

  9. Wenn Sie die von Amazon Q vorgenommenen Änderungen akzeptieren möchten, wechseln Sie zur Registerkarte Proposed Changes und wählen Sie Accept aus.

  10. Wenn Sie Einzelheiten darüber, wie Ihr Code aktualisiert wurde, und Vorschläge für die nächsten Schritte erhalten möchten, klicken Sie im Transformation Hub auf die Ellipsenschaltfläche Views and More Actions und dann auf Show Transformation Summary.