Die GitHub Copilot App-Modernisierungserweiterung in Visual Studio Code automatisiert Java Upgrades, indem veraltete Frameworks, veraltete APIs und Upgradeblocker identifiziert werden. Copilot Cloudagent Wendet Codeänderungen an, aktualisiert Builddateien und behebt Build- und CVE-Probleme für Sie.
Die Empfehlungen und Berichte, die von der Erweiterung erstellt werden, können Ihren Teams helfen, neue Technologien schnell zu übernehmen und technische Schulden zu reduzieren. Copilot führt Sie durch Upgrades mit umsetzbaren Schritten und Zusammenfassungen, wodurch Ihre Migrationen beschleunigt und gesichert werden, während der manuelle Aufwand reduziert wird.
Anweisungen zu Erweiterungsfunktionen, Setup und Benutzeroberfläche finden Sie in der Microsoft-Dokumentation zur Modernisierung der GitHub Copilot App.
Modernisierungsframework
Wenn Sie eine Agentsitzung mit der Upgradeerweiterung Java starten, hilft Ihnen die Erweiterung, Ihre Java Anwendung mithilfe des folgenden Frameworks zu modernisieren.
-
**Durchführen von Bewertungsaufgaben**. Die Erweiterung kann Code, Konfiguration und Abhängigkeiten analysieren und eine Bewertung des aktuellen Zustands Ihrer Anwendung bereitstellen. -
**Erstellen Sie einen anpassbaren Modernisierungsplan**. Basierend auf der Bewertung kann die Erweiterung einen Modernisierungspfad vorschlagen, einschließlich der erforderlichen Framework- und Bibliotheksupdates. -
**Frühzeitige Identifizierung von Problemen**. Die Erweiterung identifiziert Abhängigkeiten, veraltete Bibliotheken und Sprachfeatures sowie potenzielle Migrationsprobleme. Die Erweiterung bietet umsetzbare Strategien zur Behebung von Problemen. -
**Passen Sie Ihren Plan an**. Bearbeiten Sie den Modernisierungsplan an die spezifischen Anforderungen Ihrer Anwendung, z. B. das Einbinden von Organisationsstandards und -praktiken, mit Ausnahme bestimmter Komponenten oder Priorisieren bestimmter Features oder Entwurfsmuster. -
**Implementieren Sie Ihren Plan**. Die Erweiterung kann beim Anwenden von Codeänderungen, beim Aktualisieren von Builddateien, beim Umgestalten veralteter APIs und beim Beheben von Build- und Syntaxproblemen helfen. Die Erweiterung korrigiert automatisch Buildfehler und führt nach jedem Schritt Testüberprüfungen durch, um Stabilität und fehlerfreie Änderungen sicherzustellen. <!-- markdownlint-disable-line GHD046 --> -
**Überprüfen Sie Ihre Änderungen**. Die Erweiterung kann einen detaillierten Upgradebericht erstellen, die angewendeten Änderungen zusammenfassen und alle nicht behobenen Probleme und verbleibenden Schritte für Ihre Modernisierung auflisten. -
**Generieren Sie Komponententests**. Die Erweiterung wertet automatisch vorhandene Tests aus und generiert neue Testdateien und fügt sie dem Arbeitsbereich hinzu. Ein Bericht wird erstellt, der die Testergebnisse vor und nach der Generierung zusammenfasst. -
**Containerisieren Sie Ihre Anwendung**. Die Erweiterung kann Dockerfiles erstellen, Images bauen und alles validieren, damit Ihre modernisierte Anwendung innerhalb der Containerdienste wie Azure Kubernetes Service (AKS), Azure Container Apps (ACA) und AKS Automatic ausgeführt werden kann, was eine einfachere Bereitstellung und Skalierbarkeit ermöglicht. -
**Vorbereiten der Bereitstellung**. Mit der Erweiterung können Sie Ihre Anwendung auf Containerisierung und Bereitstellung vorbereiten, indem Bereitstellungsartefakte wie Skripts und Konfigurationen generiert werden. -
**Automatisiere Bereitstellung auf Azure**. Die Erweiterung kann Ihnen helfen, Ihre modernisierte Anwendung in Azure bereitzustellen oder zu provisionieren, indem sie die notwendigen Artefakte und Azure-Ressourcen generiert und die Ausführungsschritte durchführt.
Sie können das Verständnis Ihrer Anwendungscodebasis verbessern und Zeit und Aufwand sparen, indem Sie Copilot bei komplexen Modernisierungsaufgaben wie den folgenden helfen:
- Reverse Engineering und Codetransformation
- Sicherheitsrisiko- und Abhängigkeitsanalyse sowie Codeverhaltensprüfungen und -korrekturen
- Automatisierte Generierung von Ressourcen, Dokumentationen und Upgradeberichten
- Testgenerierung und -auswertung
- Bereitstellungsautomatisierung
Übersicht über den Modernisierungsworkflow
In diesem Beispiel werden die allgemeinen Schritte zum Modernisieren einer Java Anwendung mithilfe der GitHub Copilot App-Modernisierungserweiterung in Visual Studio Code erläutert.
Ausführliche Voraussetzungen und Anweisungen finden Sie unter Quickstart: Upgrade eines Java Projekts mit GitHub Copilot App-Modernisierung in der Microsoft Dokumentation.
Hinweis
Während des Modernisierungsworkflows werden Sie möglicherweise häufig von Copilot Cloudagent um Bestätigung gebeten, bevor es bestimmte Aktionen ausführt.
1. Öffnen Des Java Projekts
Verwenden Sie VS Code, um Ihren Projektordner zu öffnen.
Empfohlene Maßnahmen
- Stellen Sie sicher, dass Ihr Projekt erfolgreich kompiliert wird, bevor Sie fortfahren.
- Wenn Buildprobleme auftreten, können Sie Copilot verwenden, um diese zu beheben, bevor Sie den Modernisierungsprozess starten.
2. Einen Modernisierungsarbeitsbereich starten
Starten Sie Copilot-Chat und beginnen Sie eine neue Sitzung im Agentmodus. Wählen Sie GitHub Copilot App-Modernisierung aus – Upgrade für Java aus den verfügbaren Tools.
3. Analysieren Ihres Projekts auf Upgradechancen
Copilot scannt Ihre Codebasis. Die Analyse umfasst:
- Erkennung veralteter Frameworks (z. B. Spring Boot, Jakarta EE, Java SE-Versionen).
- Identifizierung veralteter APIs und veralteter Muster.
- Vorschläge für Upgradechancen.
Sie können die Ergebnisse und einen strukturierten Upgradeplan im Editor überprüfen, der Folgendes anzeigt:
- Aktuelle und empfohlene Versionen für Frameworks und Abhängigkeiten.
- Codespeicherorte, die Migration oder Umgestaltung erfordern.
- Upgradeblocker oder inkompatible Abhängigkeiten.
Empfohlene Maßnahmen
- Überprüfen und anpassen Sie den Modernisierungsplan, bevor Sie mit dem Upgrade fortfahren.
4. Anwenden von Copilot Upgradeempfehlungen
Verwenden Sie Copilot, um Codeänderungen anzuwenden oder zu überprüfen, Builddateien zu aktualisieren und APIs zu refaktorisieren.
Wenn Buildfehler gefunden werden, kann Copilot in eine Fix- und Testschleife eintreten, bis das Projekt sauber kompiliert wird.
Copilot Cloudagent Automatisierte Änderungen können Folgendes umfassen:
-
Aktualisieren von
pom.xml- oderbuild.gradle-Dateien für neue Versionen von Abhängigkeiten. -
Generieren von Pull-Requests oder direktes Committen von Änderungen.
-
Code-Refactoring für API-Änderungen. Beispiel: Migrieren von
javax.*zujakarta.*Namespaces. -
Vorschlagen oder Anwenden von Code-Transformationen, um fehlerhafte Änderungen zu beheben.
Copilot wird iterieren und weiterhin Fehler beheben, bis das Projekt erfolgreich erstellt ist und es keine weiteren zu behebenden Probleme gibt. Es ist möglich, dass kleinere Probleme, die keine sofortigen Korrekturen erfordern, weiterhin bestehen bleiben. Dadurch wird nicht verhindert, dass das Upgrade abgeschlossen wird.
Empfohlene Maßnahmen
- Überprüfen Sie alle Codeänderungen im Diff-Editor, bevor Sie dies akzeptieren.
- Verwenden Sie Copilot, um Änderungen am Code weiter zu erläutern und zu dokumentieren.
- Wenn Sie von der Erweiterung aufgefordert werden, akzeptieren Sie die Optionen zum Überprüfen geänderter Abhängigkeiten für bekannte CVEs und zum Überprüfen des Codeverhaltens auf Konsistenz.
- Überprüfen Sie alle verbleibenden Probleme, und bewerten Sie ihre Wichtigkeit.
5. Überprüfen des Upgrade-Berichts und der vorgeschlagenen nächsten Schritte
Nach Abschluss des Upgradevorgangs wird ein Zusammenfassender Upgradebericht generiert, Copilot der Folgendes umfasst:
- Projektinformationen.
- Codezeilen wurden geändert.
- Aktualisierte Abhängigkeiten.
- Zusammengefasste Code-Änderungen.
- Es wurden ggf. Probleme mit CVE-Sicherheit und Codeinkonsistenz behoben.
- Nicht behobene kleinere CVE-Probleme.
Empfohlene Maßnahmen
- Überprüfen Sie den Bericht, um die vorgenommenen Änderungen zu verstehen.
- Führen Sie alle vorgeschlagenen nächsten Schritte aus, um Ihre Modernisierung abzuschließen.
Abschließen der Modernisierung
Weitere Arbeiten zur Unterstützung Ihrer Modernisierung können folgendes umfassen:
-
**Gründliche Überprüfung** der anfänglichen Modernisierung und Codeänderungen. Stellen Sie sicher, dass die Codierungsstandards und bewährten Methoden Ihres Unternehmens erfüllt sind. -
**Genaues Überprüfen des geänderten** Codes. Überprüfen Sie beispielsweise, ob der generierte Code dem Zweck und der Architektur Ihres Projekts entspricht. Weitere Vorschläge finden Sie unter [AUTOTITLE](/copilot/tutorials/review-ai-generated-code). -
**Fehlerkorrektur**. Überprüfen Sie bestimmte Inhalte auf subtile Fehler, und verwenden Sie Ihre eigenen Debugging- und Lintingtools, um neue Inhalte auszuwerten. -
**Schreiben von Tests** und Identifizieren von Testlücken für das aktualisierte Projekt. -
**Aufräumen** des Projekts durch Entfernen aller Dateien, die nicht mehr benötigt werden. -
**Refactoring** des Codes in der neuen Sprache. Der Modernisierungsprozess hat möglicherweise zu einem Projekt geführt, dessen Architektur auf dem ihres ursprünglichen Projekts basiert, aber das ist nicht mehr die ideale oder optimale Lösung für Ihre Bedürfnisse. Möglicherweise möchten Sie den Code jetzt umgestalten, um features der Sprache und des verwendeten Frameworks optimal zu nutzen. -
**Dokumentation wird aktualisiert**. Ihre Projektinformationen und beitragenden Dateien sind möglicherweise nicht mehr aktuell und müssen neu geschrieben werden. -
**Containerisierung**. Aktualisieren Sie Ihren Anwendungscode, generieren Sie Containerisierungsdateien wie Dockerfiles, und erstellen Sie das Image, um die Gültigkeit zu testen. Bei Bedarf kann Copilot diese Containerisierungsaufgaben ausführen und einen umfassenden Plan erstellen, der die nächsten Schritte darlegt. -
**Bereitstellen** der modernisierten Anwendung in Ihre Zielumgebungen, einschließlich Cloudplattformen wie Microsoft Azure.