Anpassa Java-projektuppgraderingsplanen när du använder GitHub Copilot-appmodernisering

Den här artikeln beskriver hur du anpassar Java-projektuppgraderingsplanen som genereras av GitHub Copilot-appmodernisering.

När du initierar en uppgraderingssession genererar GitHub Copilot en plan.md fil som beskriver de steg och uppgifter som krävs för uppgraderingen. Den här filen fungerar som en skiss för uppgraderingsprocessen, som du kan anpassa för att bättre passa projektets behov.

När verktyget har genererat plan.md-filen öppnas den automatiskt i Visual Studio Code-redigeraren. I det här skedet kan du granska och anpassa planen så att den överensstämmer med dina specifika uppgraderingsmål.

Exempel på plan.md-filens struktur

I följande avsnitt beskrivs ett exempel plan.md filstruktur för att illustrera anpassningspunkterna.

Nyckelparametrar

I följande avsnitt beskrivs nyckelparametrar i planen som du kan ändra.

Kommandoalternativ för byggverktyg

Det här alternativet finns under Projektinformation och gör att du kan definiera anpassade kommandoradsparametrar för körning av byggverktyg. Giltiga alternativ finns i Dokumentationen om Maven CLI eller Gradle CLI , beroende på ditt projekt.

Examples:

  • 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

Anmärkning

Ersätt sökvägen med den faktiska settings filplatsen efter behov. Den här sökvägen som visas är bara ett exempel.

Skärmbild av Visual Studio Code som visar en exempeluppgraderingsplan med uppgraderingsmål markerade.

Testverifiering

Under avsnittet Ytterligare uppgifter kan du aktivera eller inaktivera testkörning genom att run tests before and after the upgrade ändra flaggan.

  • Ange till true för att aktivera enhetstester före och efter uppgraderingen.
  • Ange false för att hoppa över testvalidering.

Den här inställningen styr om verktyget kör enhetstester för att verifiera funktionell korrekthet under uppgraderingen.

Genom att justera de här inställningarna kan du finjustera uppgraderingsprocessen så att den passar projektets krav bättre.

Anpassa uppgraderingsmål och ge riktlinjer

I Java-uppgraderingsscenarier behöver du ofta anpassning utöver standard-JDK eller ramverksuppgraderingar– till exempel för att tillämpa projektspecifika kodändringar eller uppdatera interna bibliotek som verktyget inte identifierar automatiskt. För att stödja dessa behov möjliggör gitHub Copilot-appmodernisering nu anpassning i uppgraderingsplanen. Med den här funktionen kan du tillhandahålla egna recept, instruktioner och indata för uppgraderingsprocessen. Du kan utföra den här anpassningen genom att ändra avsnitten Uppgraderingsmål och Riktlinjer .

Avsnittet Uppgraderingsmål

I avsnittet Uppgraderingsmål kan du nu ange fler uppgraderingsmål tillsammans med målen i den första prompten. Om den primära uppgiften till exempel är att uppgradera projektet från Java 17 till Java 21, men projektet också kräver uppgradering av Log4j från 1.x till 2.x, kan du lista det som ytterligare ett mål, som du ser i följande exempelprompt:

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

Avsnittet Riktlinjer

Avsnittet Riktlinjer definierar hur Copilot ska utföra uppgraderingen. Avsnittet Uppgraderingsmål fokuserar på vad som behöver uppgraderas, men avsnittet Riktlinjer innehåller metodik, konventioner, verktyg och regler som vägleder Copilots beteende under kodtransformeringen.

Du kan inkludera alla instruktioner som hjälper dig att styra hur Copilot ändrar kod, till exempel följande instruktioner:

  • Vägledning om vilka verktyg, recept eller ramverk som ska användas för kodändringar.
  • Begränsningar eller förbud för vissa uppgraderingsmetoder.
  • Krav för kodformat eller konvention.
  • Länkar till interna filer, dokumentation eller skript som agenten kan komma åt.
  • Domänkunskaper som är användbara för att åtgärda fel eller utföra uppgraderingar.
  • Krav för hur agenten ska analysera eller kommentera kodändringar.
  • Rensningsinstruktioner för tillfälliga artefakter som skapades under uppgraderingsprocessen.

Innehållet i det här avsnittet kan vara oformaterad text, hyperlänkar eller referenser till lokala filer så länge Copilot kan komma åt dem.

Examples:

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

Skärmbild av Java-uppgraderingsplanen som innehåller avsnitten Uppgraderingsmål och Riktlinjer.

Se även

Modernisering av GitHub Copilot-appen