

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
<a name="code-transformation"></a>

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](how-CT-works.md).

**Topics**
+ [Unterstützte Java-Upgrades und IDEs](#supported-languages-IDEs)
+ [Schritt 1: Voraussetzungen](#java-upgrade-prerequisites)
+ [Schritt 2: Konfigurieren Ihres Projekts](#configure-project)
+ [Schritt 3: Erstellen einer Upgrade-Datei für Abhängigkeiten (optional)](#create-dependency-upgrade-file)
+ [Schritt 4: Transformieren Ihres Codes](#transform-code-java)
+ [So transformiert Amazon Q Developer Code für Upgrades von Java-Sprachen](how-CT-works.md)

## Unterstützte Java-Upgrades und IDEs
<a name="supported-languages-IDEs"></a>

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
<a name="java-upgrade-prerequisites"></a>

Bevor Sie fortfahren, sollten Sie sicherstellen, dass Sie die in [Einrichten von Amazon Q in Ihrer IDE](q-in-IDE-setup.md) 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](#supported-languages-IDEs) 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](#configure-project).
+ 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-plugin](https://github.com/eirslett/frontend-maven-plugin)fü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](firewall.md#data-perimeters).
+ 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
<a name="configure-project"></a>

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

### Konfigurieren eines Projekts in JetBrains
<a name="configure-jetbrains"></a>

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. 

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

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

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

   1. 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](https://www.jetbrains.com/help/idea/project-settings-and-structure.html) und [Module structure settings](https://www.jetbrains.com/help/idea/configure-modules.html) 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. 

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

1. 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
<a name="configure-vsc"></a>

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](https://maven.apache.org/install.html) 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?](troubleshooting-code-transformation.md#add-maven-to-path). 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)
<a name="create-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](how-CT-works.md#java-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: Transformieren Ihres Codes
<a name="transform-code-java"></a>

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](#configure-project) und [Fehlerbehebung](troubleshooting-code-transformation.md).

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

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

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

1. 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)](#create-dependency-upgrade-file) beschrieben sind.

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

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

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

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

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

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

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

1. 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](#configure-vsc). 

1. 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)](#create-dependency-upgrade-file) beschrieben sind.

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

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

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

1. 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**.

------

# So transformiert Amazon Q Developer Code für Upgrades von Java-Sprachen
<a name="how-CT-works"></a>

Zum Transformieren Ihres Codes generiert Amazon Q Developer einen Transformationsplan, anhand dessen die Codesprachenversion Ihres Projekts aktualisiert wird. Nach der Transformation Ihres Codes erhalten Sie eine Zusammenfassung der Transformation und einen Dateivergleich, mit dem Sie die Änderungen überprüfen können, bevor Sie sie akzeptieren. 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. In den folgenden Abschnitten erhalten Sie weitere Informationen dazu, wie Amazon Q die Transformation durchführt.

## Erstellen Ihres Codes und Aufstellen eines Transformationsplans
<a name="build-code-create-plan"></a>

Zur Transformation Ihres Codes erstellt Amazon Q Ihr Projekt lokal und generiert ein Build-Artefakt, das Ihren Quellcode, Ihre Projektabhängigkeiten und Build-Protokolle enthält. 

Nach der Generierung des Build-Artefakts erstellt Amazon Q Ihren Code in einer sicheren Build-Umgebung und stellt einen Transformationsplan auf, der auf das Projekt oder Modul zugeschnitten ist, das Sie aktualisieren. Der Transformationsplan beschreibt die spezifischen Änderungen, die Amazon Q vornehmen wird, einschließlich neuer Abhängigkeitsversionen, wichtiger Codeänderungen und Vorschlägen zum Ersetzen von veraltetem Code. Diese Änderungen basieren auf der vorläufigen Version Ihres Codes und können sich während der Transformation ändern.

## Transformieren Ihres Codes
<a name="transform-code"></a>

Zum Transformieren Ihres Codes versucht Amazon Q, den Code auf der Grundlage der vorgeschlagenen Änderungen im Transformationsplan auf die Ziel-Java-Version zu aktualisieren. Während der Vornahme der Änderungen werden bestehende Modultests in Ihrem Quellcode neu erstellt und ausgeführt, um alle aufgetretenen Fehler iterativ zu beheben. Das JDK-Upgrade kann von der folgenden Quellcodeversion auf die Zielversion durchgeführt werden:
+ Java 8 auf 17
+ Java 8 auf 21
+ Java 11 auf 17
+ Java 11 auf 21
+ Java 17 auf 21

Amazon Q nimmt die mindestens erforderlichen Änderungen vor, um Ihren Code mit der Java-Zielversion kompatibel zu machen. 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 versucht, beim Upgrade Ihres Codes die folgenden Änderungen vorzunehmen:
+ Aktualisieren veralteter Codekomponenten gemäß den Empfehlungen für die Java-Zielversion
+ Aktualisieren gängiger Bibliotheken und Frameworks auf eine Version, die mit der Java-Zielversion kompatibel ist. Dies umfasst die Aktualisierung der folgenden Bibliotheken und Frameworks auf ihre neuesten verfügbaren Hauptversionen: 
  + Apache Commons IO 
  + Apache HttpClient 
  + bc-fips 
  + Cucumber-JVM 
  + Hibernate 
  + jackson-annotations 
  + JakartaEE
  + Javax 
  + javax.servlet 
  + jaxb-api 
  + jaxb-impl 
  + jaxen 
  + jcl-over-slf4j 
  + json-simple 
  + jsr305 
  + junit 
  + junit-jupiter-api 
  + Log4j 
  + Micronaut 
  + Mockito 
  + mockito-core 
  + Okio 
  + PowerMockito 
  + Quarkus 
  + slf4j 
  + slf4j-api 
  + Spring Boot 
  + Spring Framework 
  + Spring Security 
  + Swagger 
  + testng 

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

## Entwickeln von Code in Ihrer lokalen Umgebung
<a name="java-local-builds"></a>

Während einer Transformation führt Amazon Q Verifizierungs-Builds in Ihrer lokalen Umgebung durch. Amazon Q transformiert Ihren Code serverseitig in mehreren Schritten. Nach jedem Schritt sendet Amazon Q den Code an Ihre lokale Umgebung, um die vorgenommenen Änderungen zu erstellen und zu testen. Der Code wird dann an die Serverseite zurückgesendet, um die Transformation fortzusetzen. 

Der Build in Ihrer lokalen Umgebung hilft bei der Überprüfung des transformierten Codes, indem Amazon Q Tests ausführen kann, die Zugriff auf private Ressourcen erfordern. Damit Sicherheitsrisiken im Zusammenhang mit der Erstellung von KI-generiertem Code in Ihrer lokalen Umgebung minimiert werden, überprüft und aktualisiert Amazon Q den generierten Code, um Sicherheitsbedenken auszuräumen.

## Überprüfen der Transformationszusammenfassung und Akzeptieren der Änderungen
<a name="review-plan-accept-changes"></a>

Nach Abschluss der Transformation stellt Amazon Q eine Transformationszusammenfassung mit Einzelheiten zu den vorgenommenen Änderungen bereit, einschließlich des Status des endgültigen Builds, der angibt, ob Ihr gesamtes Projekt aktualisiert wurde. Sie können sich auch eine Zusammenfassung des Build-Protokolls ansehen, um alle Probleme zu verstehen, die Amazon Q daran gehindert haben, Ihren Code in der aktualisierten Version zu erstellen.

Die Transformationszusammenfassung enthält außerdem die Unterschiede zwischen den im Transformationsplan vorgeschlagenen Änderungen und den Änderungen, die Amazon Q letztendlich vorgenommen hat, um Ihren Code zu aktualisieren, sowie alle zusätzlichen Änderungen, die nicht im ursprünglichen Plan enthalten waren. 

Nachdem Sie die Transformationszusammenfassung überprüft haben, können Sie sich die Änderungen, die Amazon Q vorschlägt, in einer Dateivergleichsansicht ansehen. Alle Codeänderungen, die Amazon Q vorschlägt, wirken sich erst auf Ihre aktuellen Projektdateien aus, wenn Sie die Änderungen akzeptieren. Der transformierte Code ist bis zu 30 Tage nach Abschluss der Transformation verfügbar. 

## Abschließen teilweise erfolgreicher Transformationen
<a name="partially-successful-transformations"></a>

Abhängig von der Komplexität und den Besonderheiten Ihrer Codebasis kann es Fälle geben, in denen die Transformation teilweise erfolgreich ist. Das bedeutet, dass Amazon Q nur bestimmte Dateien oder Codebereiche in Ihrem Projekt transformieren konnte. In diesem Fall müssen Sie den verbleibenden Code manuell aktualisieren, damit Ihr Projekt in der aktualisierten Sprachversion erstellt werden kann. 

Beim Transformieren des verbleibenden Codes können Sie als Hilfestellung Amazon Q Chat in der IDE verwenden. Sie können Amazon Q bitten, die teilweise aktualisierten Dateien zu überprüfen und neuen Code bereitzustellen, um Probleme wie Kompilierungsfehler zu beheben. Sie können auch Funktionen wie [Funktionsentwicklung](q-in-IDE-chat.md#develop-code) und [Workspace-Kontext](workspace-context.md) verwenden, um einen größeren Teil Ihres Projekts als Kontext einzubeziehen und Vorschläge für mehrere Dateien gleichzeitig zu erhalten. 