Modernisera Java appar med hjälp av GitHub Copilot modernisering i Copilot CLI

Den här artikeln innehåller en översikt över hur Java utvecklare kan modernisera sina program med hjälp av GitHub Copilot modernisering plugin-programmet i Copilot CLI. Med den här metoden kan utvecklare modernisera program var de än kodar. Plugin-programmet ger en sömlös upplevelse från slutpunkt till slutpunkt – från uppgradering och migrering till distribution – som hjälper team att påskynda omvandlingen, öka produktiviteten och på ett säkert sätt flytta sina program till moderna plattformar.

Skärmbild av GitHub Copilot CLI som visar en GitHub Copilot moderniseringsprompt.

Anmärkning

GitHub Copilot CLI är tillgängligt med abonnemangen GitHub Copilot Pro, GitHub Copilot Pro+, GitHub Copilot Business och GitHub Copilot Enterprise. Om du får Copilot från en organisation måste Copilot CLI-principen vara aktiverad i organisationens inställningar.

Genom att använda Copilot CLI för modernisering kan du köra moderniseringsuppgifter direkt från terminalen, utan att behöva växla till en IDE. Den här metoden stöder både interaktiva arbetsflöden – human-in-the-loop – och batcharbetsflöden.

Detta kan du göra

Capability Description
Java uppgradering Uppgradera Java version (8 → 11 → 17 → 21 → 25), migrera Spring Boot 2.x till 3.x, javax till jakarta och inaktuella API:er
Azure-migrering Utvärdera och migrera Java program till Azure tjänster (Azure Service Bus, Azure SQL, Redis, Azure Key Vault, Application Insights, Hanterad identitet)
CVE och sårbarhetsfixering Skanna och åtgärda CVE-sårbarheter i Maven-beroenden, inklusive log4j-, Spring-, Jackson- och OWASP-beroendeanalys
Applikationsomarkitekturering Strukturella omskrivningar, till exempel uppdelning av monoliter i mikrotjänster, modernisering av äldre användargränssnitt och modulutvinning
Distribuera till Azure Distribuera uppgraderade eller migrerade Java program direkt till Azure

Förutsättningar

Anmärkning

Ett Azure-konto krävs endast för att distribuera resurser till Azure och behövs inte när du använder GitHub Copilot modernisering för att göra kodändringar.

Installera plugin-programmet

  1. Lägg till marketplace och installera plugin-programmet:

    copilot plugin marketplace add microsoft/github-copilot-modernization
    copilot plugin install github-copilot-modernization@github-copilot-modernization
    
  2. Kontrollera att plugin-programmet har installerats genom att visa installerade plugin-program:

    /plugin list
    

    Du bör se github-copilot-modernization@github-copilot-modernization i listan.

Tips/Råd

Om du vill uppdatera plugin-programmet när en ny version är tillgänglig kör du:

copilot plugin update github-copilot-modernization@github-copilot-modernization

Starta en moderniseringsuppgift

Alternativ 1: Börja med agenten direkt

Gå till din Java projektmapp och starta Copilot CLI med moderniseringsagenten:

cd /path/to/your/java-app
copilot --agent=github-copilot-modernization:modernize

Alternativ 2: Välj agenten inifrån Copilot CLI

Om du redan är i en Copilot CLI-session använder du kommandot /agent för att växla till moderniseringsagenten:

/agent

Välj modernize i listan.

Important

Du måste välja agenten github-copilot-modernization:modernize innan du kör några moderniseringsprompter. Utan att välja agenten använder Copilot CLI standardagenten, som inte kan använda de fullständiga orkestreringsfunktionerna för flera agenter och specialiserade migreringsfunktioner som tillhandahålls av plugin-programmet.

Köra en moderniseringsprompt

När agenten är aktiv beskriver du vad du vill ha på naturligt språk:

modernize my application

Eller var mer specifik:

upgrade this app to Java 21 and Spring Boot 3.2
migrate this Spring Boot app to Azure
fix CVE vulnerabilities in my project

Vid obevakad körning använder du --allow-all-flaggan:

copilot --agent=github-copilot-modernization:modernize --allow-all

Så här fungerar arbetsflödet

Plugin-programmet använder ett trefasarbetsflöde som körs automatiskt. Du behöver inte anropa varje fas manuellt – orkestratorn hanterar routning baserat på din begäran.

Fas 1: Utvärdering

  • Identifierar Java program i den angivna sökvägen.
  • Analyserar beroenden, ramverk och Java version.
  • Identifierar moderniseringsmöjligheter och risker.
  • Sparar resultat till .github/modernize/assessment/.

Fas 2: Planering

  • Läser in utvärderingsresultat.
  • Genererar en körbar uppgiftsplan.
  • Sparar planen till .github/modernize/<app>/plan.md och tasks.json.

Fas 3: Utförande

  • Dirigerar aktiviteter till specialiserade exekutoragenter baserat på aktivitetstyp.
  • Varje exekverare söker i en kunskapsbas efter migreringsmönster.
  • Övervakar förloppet med automatiskt återförsök vid fel.
  • Skapar detaljerade incheckningar för varje uppgift för granskning.

Orchestrator stöder flera startpunkter beroende på din avsikt:

Workflow När den aktiveras Vad händer
Övergripande avsikt "modernisera mitt program" Fullständigt utvärdera → planera → köra hela arbetsflödet
Specifik uppgift "uppgradera till Java 21" Hoppar över bedömning, går direkt till planering → utförande
Köra en befintlig plan genomför planen Hoppar över utvärdering och planering, kör en befintlig plan
Headless Obevakad körning med --allow-all Samma som bred avsikt utan användarprompter

Vanliga scenarier

Uppgradera ditt Java program

Om du vill uppgradera ditt Java-program till en nyare körnings- eller ramverksversion använder du följande exempel:

copilot --agent=github-copilot-modernization:modernize
upgrade this project to JDK 21 and Spring Boot 3.2

Moderniseringsaktiviteten körs sedan, inklusive att generera uppgraderingsplanen, utföra kodreparation, skapa projektet och söka efter säkerhetsrisker enligt följande skärmbild:

Skärmbild av GitHub Copilot CLI som visar aktiviteter som körs i Java uppgraderingsscenarier.

Projektet har uppgraderats till JDK 21 och Spring Boot 3.2 och en uppgraderingssammanfattning visas.

Skärmbild av GitHub Copilot CLI som visar Java uppgraderingssammanfattning.

Migrera ditt Java program till Azure

Om du vill migrera ditt Java program till Azure beskriver du migreringsscenariot, som du ser i följande exempel. Mer information om fördefinierade migreringsuppgifter finns i Fördefinierade uppgifter för GitHub Copilot modernisering för Java utvecklare.

copilot --agent=github-copilot-modernization:modernize
migrate this application from S3 to Azure Blob Storage

Med den här uppmaningen körs migreringsuppgiften och visar förloppet i Copilot CLI.

Skärmbild av GitHub Copilot CLI som visar aktiviteter som körs i Java migreringsscenarier.

När projektet har migrerats till Microsoft Azure Blob Storage visas en migreringssammanfattning.

Skärmbild av GitHub Copilot CLI som visar Java migreringssammanfattning.

Distribuera ditt Java program till Azure

När du har uppgraderat eller migrerat programmet kan du distribuera det direkt från Copilot CLI med hjälp av följande exempel:

copilot --agent=github-copilot-modernization:modernize
Scan my project and help me plan how to containerize my application using the #appmod-get-containerization-plan tool. Execute the plan. The end goal is to have Dockerfiles that are able to be built.

Genom att använda den här prompten körs distributionsuppgiften och visar dess förlopp i Copilot CLI.

Skärmbild av GitHub Copilot CLI som visar Java distributionsinformation.

När projektet har distribuerats visas en distributionssammanfattning.

Skärmbild av GitHub Copilot CLI som visar Java distributionssammanfattning.

Troubleshooting

Plugin-programmet hittades inte

# Verify marketplace is added
copilot plugin marketplace list

# Re-add the marketplace if needed
copilot plugin marketplace add microsoft/github-copilot-modernization

# Reinstall
copilot plugin install github-copilot-modernization@github-copilot-modernization

Utvärderingen misslyckas: inget Java program hittades

  • Verifiera pom.xml eller build.gradle finns i projektroten.
  • Kontrollera att du är i rätt katalog innan du börjar Copilot CLI.

MCP-serverproblem

Plugin-programmet använder den MCP-server som definierats i dess konfiguration. Om du får problem kan du prova att installera om plugin-programmet för att återställa MCP-konfigurationen.

Lämna feedback

Om du har några synpunkter på insticksprogrammet GitHub Copilot modernization, skapa ett ärende i github-copilot-appmod-lagringsplatsen.

Nästa steg