Dela via


Vanliga frågor och svar om modernisering av GitHub Copilot-appar

Svar på vanliga frågor om modernisering av GitHub Copilot-appar.

FAQ

Vad är produktomfattningen för GitHub Copilot-appmoderniseringen?

Vi inser att migreringsprocessen alltid är komplex och sammanflätad, med olika lager av appekosystem. Just nu begränsar vi migreringsomfånget till Java-serverdelsappar. Vi stöder projekt som skapas med Maven eller Gradle. Information om viktiga produktfunktioner finns i översikten över modernisering av GitHub Copilot-appen.

Kommer moderniseringen av GitHub Copilot-appen att vara öppen källkod i framtiden?

Vi har för närvarande inga planer på att modernisera GitHub Copilot-appen med öppen källkod.

Vilken GitHub Copilot-licensplan behöver jag för att använda GitHub Copilot-appmodernisering?

GitHub Copilot-appmodernisering är tillgänglig för Pro, Pro+, Business eller Enterprise-plan.

Hur faktureras moderniseringen av GitHub Copilot-appen?

GitHub Copilot-appmodernisering är en funktion i GitHub Copilot och delar samma prenumerationsfaktureringsmodell som GitHub Copilot. Programmoderniseringsuppgifter förbrukar premiumbegäranden, där varje prenumerationsplan erbjuder en månatlig ersättning för premiumbegäranden. För att överskrida plangränsen krävs en planuppgradering eller extra köp av premiumbegäranden.

Förutom Java behöver jag även migrera appar som skrivits på andra språk. Finns det en plan för att moderniseringen av GitHub Copilot-appen ska gå utöver Java?

För närvarande fokuserar GitHub Copilot-appmoderniseringen på att hjälpa till med Java- och .NET-program. Vi samlar dock aktivt in krav och feedback från kunder om behovet av att stödja andra språk.

Lagrar GitHub Copilot-appmodernisering min källkod?

No. GitHub Copilot-appmodernisering använder GitHub Copilot på samma sätt som du använder den för att ändra kod, vilket inte behåller kodfragment utöver den omedelbara sessionen. Vi samlar inte heller in, överför eller lagrar dina anpassade uppgifter.

Telemetrimått samlas in och analyseras för att spåra funktionsanvändning och effektivitet.

Mer information finns i Microsofts sekretesspolicy.

Vilken typ av program använde du för att utvärdera moderniseringen av GitHub Copilot-appen?

Vi har testat moderniseringen av GitHub Copilot-appen på hundratals lagringsplatser med öppen källkod för att säkerställa att bygg-, konsekvens- och enhetstester godkänns efter moderniseringsprocessen. Vi arbetade också mycket med kunder under fasen Teknisk förhandsversion. Indata från användare används för att förbättra produktupplevelsen. Du kan skicka feedback via den här länken.

Vilka ramverk är GitHub Copilot-appmodernisering optimerad för i uppgraderingsscenarier?

Även om GitHub Copilot-appmodernisering fokuserar på att uppgradera Java-körningar, optimerar den även uppgraderingar för följande ramverk:

  • Spring Boot upp till version 3.5.
  • Java EE – Javax till Jakarta EE, upp till Jakarta EE 10.
  • Legacy Spring Framework upp till version 6.2+.
  • JUnit.
  • Olika beroenden från tredje part.

Mer information finns i Anpassa Java-projektuppgraderingsplanen.

Vilka versioner av Java stöds för uppgradering?

Vi stöder för närvarande följande Versioner av Java Development Kit (JDK):

  • JDK 8
  • JDK 11
  • JDK 17
  • JDK 21

Den minsta JDK-version som krävs för ett projekt är JDK 8 och du kan uppgradera projektet till att använda valfri version upp till JDK 21.

Vilka typer av Java-projekt stöds?

För närvarande stöds endast följande projekttyper:

  • Maven-projekt (inklusive Maven Wrapper)
  • Gradle-projekt (endast Gradle Wrapper, version 5+)

Kotlin DSL-baserade Gradle-projekt stöds inte.

Vilka är begränsningarna i Java-uppgraderingar?

För närvarande har tillägget följande funktionsbegränsningar:

  • Tillägget har exklusivt stöd för Java-uppgraderingar och tillgodoser inte andra programmeringsspråk.
  • Det fungerar bara med Java-projekt som skapats med Maven och Gradle.
  • Endast Git-lagringsplatser stöds. Andra versionskontrollsystem är inte kompatibla.
  • Tillägget kan inte garantera att de ändringar som föreslås är optimala eller anses vara bästa praxis.

Vi rekommenderar att du använder följande metodtips med det här verktyget:

  • Kör tillägget endast på projekt som uppfyller de angivna egenskaperna enligt beskrivningen ovan.
  • Slutför noggranna kodgranskningar innan du sammanfogar tilläggsutdata till produktionsgrenar.
  • Kör alla tester och slutför de vanliga QA-kontroller som är associerade med ändringshanteringsprocessen efter behov.

Hur moderniserar jag flera appar samtidigt och hur kan jag skala appmoderfunktionen för ett stort antal appar?

Du kan använda AppCAT CLI för att skanna flera projekt samtidigt med hjälp -bulk av flaggan. Vi rekommenderar dock att du bara moderniserar ett projekt eller en app i taget. Du kan skapa en egen migreringsuppgift baserat på kodändringar från ett projekt och tillämpa dem på andra projekt, vilket minskar repetitivt arbete.

Vilken modell ska jag använda?

Som en allmän tumregel överträffar nyare modeller tidigare modeller. För kodningsuppgifter rekommenderar vi Claud Sonnet-modeller för bättre noggrannhet. Men för att minska kostnaderna bör du överväga att starta utforskningen från modeller med en lägre multiplikator.

Felsökningsguide

Vilka är tokenstorleksgränserna för de översta modellerna?

Detaljerade modellspecifikationer finns i GitHub Copilot-dokumentationen.

Vilka är driftskraven för Java-körnings- och ramverksuppgraderingar?

För att säkerställa lyckade Java-körnings- och ramverksuppgraderingar krävs följande information:

  • Projekttypen. Projektet måste vara ett Git-baserat Java-projekt som kan byggas med Maven eller Gradle.
  • Java-målversionen – den JDK-version som du vill uppgradera till – till exempel Java 21.
  • Käll- och mål-JDK-sökvägarna – sökvägarna till de installerade JDK:erna för de aktuella versionerna och målversionerna.
  • Maven/Gradle-installationen – sökvägar till Maven/Gradle-byggverktygen. För Gradle stöds endast Gradle-omslutningar.

Hur använder GitHub Copilot-appmodernisering MCP-servern och hur kan jag söka efter uppdateringar eller felsöka problem?

GitHub Copilot-appmodernisering använder MCP-servern för att förbättra funktionerna för kodtransformering. När du har installerat Visual Studio Code-tillägget registreras MCP-servern och startas automatiskt.

Om du ser en särskild uppdateringsknapp i det nedre högra hörnet i GitHub Copilot Chat-panelen kan det tyda på att verktygsuppdateringar är tillgängliga. Välj knappen för att automatiskt läsa in de senaste versionerna av verktygen.

McP-servern för mcp-modernisering av GitHub Copilot-appen underhåller även loggar. Om du vill felsöka kontrollerar du loggfilerna som finns på: %USERPROFILE%/.ghcp-appmod-java/logs

Varför stoppas moderniseringen av GitHub Copilot-appen när du har listat en plan utan att göra några kodändringar?

Ibland kräver GitHub Copilot-appmodernisering explicit bekräftelse innan du fortsätter. Du kan skriva ja eller fortsätta i chatten så att agenten kan gå vidare med kodändringarna.

Skärmbild av gitHub Copilot-chattfönstret i Visual Studio Code som visar att användaren som skriver fortsätter som svar på en uppdateringsplan.

Varför uppmanar gitHub Copilot-appmodernisering mig ofta att välja **Fortsätt**?

För att säkerställa säkrare åtgärder ber GitHub Copilot-agenten upprepade gånger om användarbekräftelse. Som en lösning kan du välja listrutepilen bredvid knappen Fortsätt och sedan välja Tillåt alltid eller uppdatera visual Studio Code-inställningen chat.tools.autoApprove så att true alla verktyg godkänns automatiskt. Vi rekommenderar också att du konfigurerar chat.agent.maxRequests för att 128 minska antalet steg som kräver bekräftelse för att fortsätta.

Skärmbild av chattfönstret GitHub Copilot som visar knappen Fortsätt och den nedrullningsbara menyn med Alternativet Tillåt.

Vilka nätverkskonfigurationer krävs för att använda GitHub Copilot-appmodernisering i Visual Studio Code?

För att säkerställa att tillägget fungerar korrekt i Visual Studio Code måste nätverksanslutningen vara stabil och ge åtkomst till GitHub Copilot-tjänster. I begränsade miljöer kan du behöva konfigurera proxy- eller brandväggsregler i enlighet med detta. Om du stöter på fel som "Språkmodell är inte tillgänglig" i chattfönstret kan du läsa den officiella felsökningsguiden Hantera GitHub Copilot-åtkomst till företagets nätverk.

Finns det några inställningar i GitHub Copilot som jag bör konfigurera för att se till att jag får alla funktioner?

GitHub Copilot kan blockera vissa kodgenerationer för filer som ofta liknar offentlig kod, till exempel pom.xml. För att förhindra att Copilot blockerar dessa ändringar måste du tillåta förslag som matchar offentlig kod. Anvisningar finns i Aktivera eller inaktivera förslag som matchar offentlig kod.

Information om hur du hanterar inställningarna för GitHub Copilot i din organisation finns i Aktivera Copilot-funktioner i din organisation.

Varför ser jag inte verktyg i GitHub Copilot-appmodernisering som använder MCP-servern (Model Context Protocol) ?

GitHub Copilot-appmodernisering använder MCP-servern för att tillhandahålla specialiserade migreringsfunktioner. När du väljer Uppdatera upprättas en anslutning till den här servern och de tillgängliga verktygen i chattagenten uppdateras. Den här åtgärden är endast nödvändig i följande fall:

  • När du öppnar ett Java-projekt för migrering för första gången.
  • När du uppgraderar tillägget till en nyare version.

Varför är kodregenereringsprocessen instabil?

GitHub Copilot-appmodernisering drivs av AI, så enstaka fel kan inträffa. Granska alltid utdata noggrant före användning. Du kan också försöka återskapa processen igen för att se alternativa kodförslag.

Var lagras uppgifter på den lokala datorn och hur kan de delas?

Fördefinierade aktiviteter finns på följande plats: %USERPROFILE%.vscode\extensions\microsoft.migrate-java-to-azure-0.1.0\rag

Anpassade uppgifter finns på följande plats: %USERPROFILE%.azure\migrate-copilot\custom-rule

Hur kan jag visa mer information om de kodändringar som agenten har gjort?

Agenten innehåller alltid förklaringar till sina kodändringar i chattfönstret. Den här informationen kan dock döljas i användargränssnittet. Du kan expandera svaret i chatten för att se hela logiken och det stegvisa resonemanget.