Freigeben über


Anpassen des Upgradeplans für das Java-Projekt bei Verwendung von GitHub Copilot zur Modernisierung von Anwendungen.

In diesem Artikel wird beschrieben, wie Sie den Java-Projektupgradeplan anpassen, der von der GitHub Copilot-App-Modernisierung generiert wird.

Wenn Sie eine Upgradesitzung initiieren, generiert GitHub Copilot eine plan.md Datei, die die für das Upgrade erforderlichen Schritte und Aufgaben beschreibt. Diese Datei dient als Blueprint für den Upgradeprozess, den Sie an die Anforderungen Ihres Projekts anpassen können.

Nachdem das Tool die plan.md Datei generiert hat, wird sie automatisch im Visual Studio Code-Editor geöffnet. In dieser Phase können Sie den Plan überprüfen und anpassen, um sicherzustellen, dass er ihren spezifischen Upgradezielen entspricht.

Beispiel plan.md Dateistruktur

In den folgenden Abschnitten wird ein Beispiel plan.md Dateistruktur beschrieben, um die Anpassungspunkte zu veranschaulichen.

Schlüsselparameter

In den folgenden Abschnitten werden die wichtigsten Parameter im Plan beschrieben, den Sie ändern können.

Befehlsoption "Tool erstellen"

Diese Option befindet sich unter "Projektinformationen" und ermöglicht es Ihnen, benutzerdefinierte Befehlszeilenparameter für die Ausführung des Buildtools zu definieren. Gültige Optionen finden Sie in der Maven CLI - oder Gradle CLI-Dokumentation , je nach Projekt.

Beispiele

  • Für Maven: Build tool command options: -Dmaven.javadoc.skip=true -s "/path/to/custom/settings.xml"

  • Für Gradle: Build tool command options: --info -Penv=production

Hinweis

Ersetzen Sie den Pfad nach Bedarf durch den tatsächlichen settings Dateispeicherort. Dieser pfad ist nur ein Beispiel.

Screenshot von Visual Studio Code, der einen Beispielupgradeplan mit hervorgehobenen Upgradezielen zeigt.

Testüberprüfung

Im Abschnitt "Zusätzliche Aufgaben " können Sie die Testausführung aktivieren oder deaktivieren, indem Sie das run tests before and after the upgrade Flag ändern.

  • Legen Sie diese Einstellung fest, true um Komponententests vor und nach dem Upgrade zu aktivieren.
  • Setzen Sie false, um die Testüberprüfung zu überspringen.

Diese Einstellung steuert, ob das Tool Komponententests ausführt, um die Funktionale Korrektheit während des Upgrades zu überprüfen.

Indem Sie diese Einstellungen anpassen, können Sie den Upgradeprozess optimieren, um die Anforderungen Ihres Projekts besser zu erfüllen.

Anpassen von Upgradezielen und Bereitstellen von Richtlinien

In Java-Upgradeszenarien benötigen Sie häufig Anpassungen über standardmäßige JDK- oder Frameworkupgrades hinaus – z. B. um projektspezifische Codeänderungen anzuwenden oder interne Bibliotheken zu aktualisieren, die das Tool nicht automatisch erkennt. Zur Unterstützung dieser Anforderungen ermöglicht die GitHub Copilot-App-Modernisierung jetzt anpassungen im Upgradeplan. Mit dieser Funktion können Sie Ihre eigenen Rezepte, Anweisungen und Eingaben bereitstellen, um den Upgradeprozess zu unterstützen. Sie können diese Anpassung ausführen, indem Sie die Abschnitte Upgradeziele und Richtlinien ändern.

Abschnitt "Upgradeziele"

Im Abschnitt "Upgradeziele " können Sie nun weitere Upgradeziele zusammen mit den Zielen in Ihrer ersten Eingabeaufforderung angeben. Wenn beispielsweise der primäre Vorgang das Upgrade des Projekts von Java 17 auf Java 21 erfordert, aber das Projekt auch ein Upgrade von Log4j von 1.x auf 2.x erfordert, können Sie dies als zusätzliches Ziel auflisten, wie in der folgenden Beispielaufforderung gezeigt:

## Upgrade Goals
- Upgrade from Java 17 to 21
- Upgrade org.apache.logging.log4j:* to 2.24.3 
- Upgrade org.internal.lib to 2.0

Der Abschnitt "Richtlinien"

Im Abschnitt "Richtlinien" wird definiert, wie Copilot das Upgrade ausführen soll. Während sich der Abschnitt "Upgradeziele " auf das Upgrade konzentriert, erfasst der Abschnitt "Richtlinien " die Methodik, Konventionen, Tools und Regeln, die das Verhalten von Copilot während der Codetransformation unterstützen.

Sie können alle Anweisungen einschließen, mit denen Sie steuern können, wie Copilot Code ändert, z. B. die folgenden Anweisungen:

  • Anleitungen dazu, welche Tools, Rezepte oder Frameworks für Codeänderungen verwendet werden sollen.
  • Einschränkungen oder Verbote bestimmter Upgradeansätze.
  • Codeformat- oder Konventionsanforderungen.
  • Links zu internen Dateien, Dokumentationen oder Skripts, auf die der Agent zugreifen kann.
  • Domänenwissen ist hilfreich, um Fehler zu beheben oder Upgrades auszuführen.
  • Anforderungen daran, wie der Agent Codeänderungen annotieren oder kommentieren soll.
  • Bereinigungsanweisungen für temporäre Artefakte, die während des Upgradeprozesses erstellt wurden.

Der Inhalt dieses Abschnitts kann Nur-Text, Links oder Verweise auf lokale Dateien sein, solange Copilot darauf zugreifen kann.

Beispiele

## Guidelines
- Do not use Log4j 1 to Log4J 2 API bridge to upgrade to Log4J 2. 
- Please follow the code conventions defined in /xxx/bbb/rules.txt.
- Please provide detailed comments explaining why each code change is necessary.
- "com.example:internal-lib:2.0.0" is compatible with Java 21.
- Use our internal MCP tool get_internal_lib_knowledge to retrieve compatibility information for internal libraries.
- After the upgrade, please remove any temporary files created during the process, such as code modification scripts.

Screenshot des Java-Upgradeplans, der die Abschnitte

Siehe auch

GitHub Copilot-App-Modernisierung