Condividi tramite


Domande frequenti sulla modernizzazione delle app Copilot di GitHub

Risposte alle domande frequenti sulla modernizzazione delle app Di GitHub Copilot.

FAQ

Qual è l'ambito del prodotto della modernizzazione dell'app GitHub Copilot?

Il processo di migrazione è sempre complesso e intrecciato, con diversi livelli di ecosistemi di app. In questo momento, l'ambito di migrazione viene limitato alle app back-end Java. Sono supportati progetti compilati con Maven o Gradle. Per informazioni sulle principali funzionalità del prodotto, vedere Panoramica della modernizzazione delle app Copilot di GitHub.

La modernizzazione delle app Copilot di GitHub sarà open source in futuro?

Attualmente non sono previsti piani per la modernizzazione delle app GitHub Copilot open source.

Quale piano di licenza di GitHub Copilot è necessario usare la modernizzazione delle app GitHub Copilot?

La modernizzazione delle app Copilot di GitHub è disponibile per qualsiasi piano di GitHub Copilot.

Come viene fatturata la modernizzazione delle app Copilot di GitHub?

La modernizzazione delle app Copilot di GitHub è una funzionalità di GitHub Copilot e condivide lo stesso modello di fatturazione della sottoscrizione di GitHub Copilot. Le attività di modernizzazione delle app usano richieste Premium, con ogni piano di sottoscrizione che offre una indennità mensile di richieste Premium. Il superamento del limite di piano richiede un aggiornamento del piano o un acquisto aggiuntivo di richieste Premium.

Oltre a Java, è anche necessario eseguire la migrazione delle app scritte in altri linguaggi. Esiste un piano per la modernizzazione delle app Copilot di GitHub per andare oltre Java?

Attualmente, la modernizzazione delle app Copilot di GitHub è incentrata sull'assistenza per le applicazioni Java e .NET. Tuttavia, stiamo raccogliendo attivamente i requisiti e il feedback dei clienti in merito alla necessità di supportare altre lingue.

La modernizzazione dell'app Copilot di GitHub archivia il codice sorgente?

No. La modernizzazione delle app Copilot di GitHub usa GitHub Copilot nello stesso modo in cui viene usata per modificare il codice, che non mantiene frammenti di codice oltre la sessione immediata. Le attività personalizzate non vengono raccolte, trasmesse o archiviate.

Le metriche di telemetria vengono raccolte e analizzate per tenere traccia dell'utilizzo e dell'efficacia delle funzionalità.

Per altre informazioni, vedere l'Informativa sulla privacy microsoft.

Quale tipo di applicazioni è stato usato per valutare la modernizzazione delle app Di GitHub Copilot?

È stata testata la modernizzazione delle app Di GitHub Copilot in centinaia di repository open source per garantire che i test di compilazione, coerenza e unit test vengano superati dopo il processo di modernizzazione. Abbiamo anche lavorato molto con i clienti durante la fase Technical Preview. L'input degli utenti viene usato per migliorare l'esperienza del prodotto. È possibile inviare commenti e suggerimenti usando questo collegamento.

Quali framework sono ottimizzati per la modernizzazione delle app Copilot di GitHub negli scenari di aggiornamento?

Anche se la modernizzazione delle app Copilot di GitHub è incentrata sull'aggiornamento dei runtime Java, ottimizza anche gli aggiornamenti per i framework seguenti:

  • Spring Boot fino alla versione 3.5.
  • Java EE : Da Javax a Jakarta EE, fino a Jakarta EE 10.
  • Spring Framework legacy fino alla versione 6.2+.
  • JUnit.
  • Varie dipendenze di terze parti.

Per altre informazioni, vedere Personalizzare il piano di aggiornamento del progetto Java.

Quali versioni di Java sono supportate per l'aggiornamento?

Attualmente sono supportate le seguenti versioni di Java Development Kit (JDK):

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

La versione minima richiesta di JDK per un progetto è JDK 8 ed è possibile aggiornare il progetto per usare qualsiasi versione fino a JDK 21.

Quali tipi di progetti Java sono supportati?

Attualmente sono supportati solo i tipi di progetto seguenti:

  • Progetti Maven (incluso Maven Wrapper)
  • Progetti Gradle (solo Gradle Wrapper versione 5+)

I progetti Gradle basati su DSL Kotlin non sono supportati.

Quali sono le limitazioni degli aggiornamenti Java?

Attualmente, l'estensione presenta le limitazioni funzionali seguenti:

  • L'estensione supporta esclusivamente gli aggiornamenti Java e non è adatta ad altri linguaggi di programmazione.
  • Funziona solo con i progetti Java compilati usando Maven e Gradle.
  • Sono supportati solo i repository Git. Altri sistemi di controllo della versione non sono compatibili.
  • L'estensione non può garantire che le modifiche proposte siano ottimali o considerate procedure consigliate.

È consigliabile usare le procedure consigliate seguenti con questo strumento:

  • Eseguire l'estensione solo nei progetti che soddisfano le caratteristiche specificate, come descritto in precedenza.
  • Completare le revisioni complete del codice prima di unire l'output dell'estensione nei rami di produzione.
  • Eseguire tutti i test e completare i consueti controlli di controllo di qualità associati al processo di gestione delle modifiche in base alle esigenze.

Come si modernizzare più app contemporaneamente e come è possibile ridimensionare l'esperienza mod dell'app per un numero elevato di app?

È possibile usare l'interfaccia della riga di comando di AppCAT per analizzare più progetti contemporaneamente usando il -bulk flag . È tuttavia consigliabile modernizzare un solo progetto o app alla volta. È possibile creare un'attività di migrazione personalizzata in base alle modifiche del codice da un progetto e applicarle ad altri progetti, riducendo il lavoro ripetitivo.

Quale modello è necessario usare?

Come regola generale, i modelli più recenti superano i modelli precedenti. Per le attività di codifica, è consigliabile usare modelli Claud Sonnet per una maggiore accuratezza. Tuttavia, per ridurre i costi, prendere in considerazione l'avvio dell'esplorazione dai modelli con un moltiplicatore inferiore.

Guida alla risoluzione dei problemi

Quali sono i limiti delle dimensioni del token dei modelli principali?

Per informazioni dettagliate sulle specifiche del modello, vedere la documentazione di GitHub Copilot.

Quali sono i requisiti operativi per gli aggiornamenti di runtime e framework Java?

Per garantire l'esito positivo degli aggiornamenti del runtime e del framework Java, sono necessarie le informazioni seguenti:

  • Tipo di progetto. Il progetto deve essere un progetto Java basato su Git compilabile con Maven o Gradle.
  • Versione Java di destinazione, ovvero la versione JDK a cui si vuole eseguire l'aggiornamento, ad esempio Java 21.
  • Percorsi JDK di origine e destinazione: i percorsi dei JDK installati per le versioni correnti e di destinazione.
  • Configurazione di Maven/Gradle: percorsi degli strumenti di compilazione Maven/Gradle. Per Gradle sono supportati solo i wrapper Gradle.

In che modo la modernizzazione delle app Copilot di GitHub usa il server MCP e come è possibile verificare la presenza di aggiornamenti o risolvere i problemi?

La modernizzazione delle app Copilot di GitHub usa il server MCP per migliorare le funzionalità di trasformazione del codice. Dopo aver installato l'estensione Di Visual Studio Code, il server MCP viene registrato e avviato automaticamente.

Se si nota un pulsante di aggiornamento speciale nell'angolo in basso a destra del pannello Chat di GitHub Copilot, potrebbe indicare che gli aggiornamenti degli strumenti sono disponibili. Selezionare il pulsante per caricare automaticamente le versioni più recenti degli strumenti.

Il server MCP per la modernizzazione delle app Copilot di GitHub gestisce anche i log. Per risolvere i problemi, controllare i file di log disponibili in: %USERPROFILE%/.ghcp-appmod-java/logs

Perché la modernizzazione delle app Di GitHub Copilot si arresta dopo aver elencato un piano senza apportare modifiche al codice?

In alcuni casi, la modernizzazione delle app Copilot di GitHub richiede una conferma esplicita prima di procedere. È possibile digitare o continuare nella chat per consentire all'agente di procedere con le modifiche al codice.

Screenshot del riquadro della chat di GitHub Copilot in Visual Studio Code che mostra che l'utente digita continua in risposta a un piano di aggiornamento.

Perché la modernizzazione delle app Di GitHub Copilot richiede spesso di selezionare **Continua**?

Per garantire operazioni più sicure, l'agente Di GitHub Copilot richiede ripetutamente la conferma dell'utente, è possibile usare la configurazione seguente come soluzione alternativa.

  • Per Visual Studio Code, è possibile selezionare la freccia a discesa accanto al pulsante Continua e quindi selezionare Consenti sempre o aggiornare l'impostazione chat.tools.autoApprove di Visual Studio Code per true approvare automaticamente tutti gli strumenti. È anche consigliabile configurare chat.agent.maxRequests per 128 ridurre il numero di passaggi che richiedono la conferma per continuare.

    Screenshot del riquadro chat di GitHub Copilot che mostra il pulsante Continua e il menu a discesa con opzioni Consenti.

  • Per Intellij IDEA, è possibile selezionare il pulsante Continua o aggiornare le impostazioni, selezionare la finestra Strumenti> di configurazionedi GitHub Copilot e quindi selezionare Approva automaticamente. È anche consigliabile abilitare le annotazioni dello strumento MCP attendibili e aumentare le richieste massime a 99.

    Screenshot del riquadro chat di GitHub Copilot che mostra il pulsante Continua in Intellij IDEA.

Quali configurazioni di rete sono necessarie per usare la modernizzazione delle app Copilot di GitHub in Visual Studio Code?

Per garantire che l'estensione funzioni correttamente in Visual Studio Code, la connettività di rete deve essere stabile e consentire l'accesso ai servizi GitHub Copilot. Negli ambienti con restrizioni potrebbe essere necessario configurare di conseguenza le regole proxy o firewall. Se si verificano errori come "Modello linguistico non disponibile" nella finestra della chat, vedere la guida ufficiale alla risoluzione dei problemi Gestione dell'accesso di GitHub Copilot alla rete aziendale.

Esistono impostazioni in GitHub Copilot da configurare per assicurarsi di ottenere tutte le funzionalità?

GitHub Copilot potrebbe bloccare determinate generazioni di codice per i file che in genere assomigliano al codice pubblico, ad esempio pom.xml. Per impedire a Copilot di bloccare queste modifiche, è necessario consentire suggerimenti corrispondenti al codice pubblico. Per istruzioni, vedere Abilitazione o disabilitazione dei suggerimenti corrispondenti al codice pubblico.

Per gestire le impostazioni per GitHub Copilot nell'organizzazione, vedere Abilitazione delle funzionalità di Copilot nell'organizzazione.

Perché non vengono visualizzati gli strumenti nella modernizzazione delle app Copilot di GitHub che usano il server MCP (Model Context Protocol) ?

La modernizzazione delle app Copilot di GitHub usa il server MCP per fornire funzionalità di migrazione specializzate. Quando si seleziona Aggiorna, stabilisce una connessione con questo server e aggiorna gli strumenti disponibili nell'agente di chat. Questa azione è necessaria solo nei casi seguenti:

  • Quando si apre un progetto Java per la migrazione per la prima volta.
  • Quando si aggiorna l'estensione a una versione più recente.

Perché il processo di rigenerazione del codice è instabile?

La modernizzazione delle app Copilot di GitHub è basata sull'intelligenza artificiale, quindi possono verificarsi errori occasionali. Esaminare sempre attentamente l'output prima dell'uso. È anche possibile ritentare il processo di rigenerazione per visualizzare suggerimenti di codice alternativo.

Dove sono archiviate le attività nel computer locale e come possono essere condivise?

Le attività predefinite si trovano nel percorso seguente: %USERPROFILE%.vscode\extensions\microsoft.migrate-java-to-azure-0.1.0\rag

Le attività personalizzate si trovano nel percorso seguente: %USERPROFILE%.azure\migrate-copilot\custom-rule

Come è possibile visualizzare altri dettagli sulle modifiche al codice apportate dall'agente?

L'agente include sempre spiegazioni per le modifiche al codice nella finestra di chat. Tuttavia, questi dettagli potrebbero essere compressi nell'interfaccia utente. È possibile espandere la risposta nella chat per visualizzare la logica completa e il ragionamento dettagliato.

È possibile usare la funzionalità di modernizzazione delle app Copilot di GitHub in IntelliJ IDEA in una piattaforma Linux?

Attualmente sono supportate solo le piattaforme Windows e macOS.