Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La modernizzazione con GitHub Copilot offre un'esperienza agentica basata sull'IA che automatizza in modo completo i flussi di lavoro per l'aggiornamento di Java, dall'analisi del progetto e dalla generazione del piano fino alla trasformazione del codice, alla validazione della compilazione e alla correzione delle vulnerabilità CVE.
Scenari di aggiornamento supportati
- Aggiornare Java Development Kit (JDK) a Java 11, 17, 21 o 25.
- Aggiornare Spring Boot alla versione 4.0.
- Aggiornare Spring Framework alla versione 7.x.
- Aggiornare Java EE a Jakarta EE, fino a Jakarta EE 11.
- Aggiornare Azure SDK per Java.
- Aggiornare JUnit.
- Aggiornare le dipendenze di terze parti a una versione specificata.
Prerequisiti
- Un account GitHub con GitHub Copilot abilitato. È necessario un piano Gratuito, Pro, Pro+, Business o Enterprise.
- Java JDK per le versioni JDK di origine e di destinazione.
- Maven o Gradle per compilare progetti Java.
- Un progetto di Java gestito da Git usando Maven o Gradle.
- Per i progetti basati su Maven: accesso al repository Maven Central pubblico.
- Versione più recente di Visual Studio Code.
- GitHub Copilot in Visual Studio Code. Per istruzioni sull'installazione, vedere Impostare GitHub Copilot in Visual Studio Code. Assicurarsi di accedere all'account GitHub all'interno di Visual Studio Code.
- Modernizzazione di GitHub Copilot. Riavviare Visual Studio Code dopo l'installazione.
- La versione più recente di IntelliJ IDEA.
- GitHub Copilot. Per altre istruzioni, vedere Impostare GitHub Copilot in IntelliJ IDEA. Assicurarsi di accedere all'account GitHub in IntelliJ IDEA.
- Modernizzazione di GitHub Copilot. Riavviare IntelliJ IDEA dopo l'installazione. Se non hai installato GitHub Copilot, puoi installare direttamente la versione aggiornata di GitHub Copilot.
- Per un uso più efficiente della modernizzazione GitHub Copilot: nelle impostazioni di IntelliJ IDEA, selezionare la finestra di configurazione Tools>GitHub Copilot e quindi selezionare Auto-approve e Trust MCP Tool Annotations. Per ulteriori informazioni, vedere Configurare le impostazioni di modernizzazione di GitHub Copilot per ottimizzare l'esperienza su IntelliJ.
Installare l'interfaccia della riga di comando GitHub Copilot:
npm install -g @github/copilotInstallare il plug-in di modernizzazione GitHub Copilot:
copilot plugin marketplace add microsoft/modernize-java copilot plugin install modernize-java@modernize-java
Annotazioni
Un account Azure è necessario solo per la distribuzione di risorse in Azure e non è necessario quando si usa GitHub Copilot modernizzazione per apportare modifiche al codice.
Se si usa Gradle, è supportato solo il wrapper Gradle versione 5 o successiva.
Il linguaggio DSL (Domain Specific Language) di Kotlin non è supportato.
Selezionare un progetto di Java da aggiornare
Per questa esercitazione, scegliere uno dei repository di esempio seguenti:
- Maven: uportal-messaging
- Gradle: docraptor-java
Avviare l'aggiornamento
Per avviare il processo di aggiornamento, seguire questa procedura:
Aprire il progetto di Java selezionato in Visual Studio Code.
Nella barra laterale, apri il pannello GitHub Copilot modernization per vedere la pagina QuickStart.
Seleziona Upgrade Java Runtime & Frameworks.
Questa azione apre GitHub Copilot Chat in modalità agente e avvia automaticamente il processo di aggiornamento.
Suggerimento
È anche possibile selezionare un'attività specifica dall'albero Attività sotto il pannello Avvio rapido (ad esempio , Aggiorna versione spring boot o Aggiorna versione di Jakarta EE) per attivare un aggiornamento di destinazione.
In alternativa, è possibile digitare direttamente in GitHub Copilot Chat usando la modalità agente, ad esempio "Aggiornare il progetto di Java a Java 21" per avviare l'aggiornamento.
Per avviare il processo di aggiornamento, seguire questa procedura:
Aprire il progetto di Java selezionato in IntelliJ IDEA.
Nella barra laterale, apri il pannello GitHub Copilot Modernization per vedere la pagina QuickStart.
Selezionare Aggiorna runtime e framework.
Questa azione apre GitHub Copilot Chat in modalità agente e avvia automaticamente il processo di aggiornamento.
Suggerimento
È anche possibile digitare direttamente in GitHub Copilot Chat usando la modalità agente, ad esempio "Aggiornare il progetto di Java a Java 21" per avviare l'aggiornamento.
Per avviare il processo di aggiornamento, seguire questa procedura:
Aprire un terminale e passare alla directory del progetto Java.
Eseguire il comando di aggiornamento:
copilot --model claude-sonnet-4.6 --agent modernize-java:modernize-javaDopo l'avvio dell'agente, digitare la richiesta di aggiornamento:
upgrade to Java 21 + Spring Boot 3.5.x
Selezionare le destinazioni di aggiornamento
Dopo aver avviato l'aggiornamento, l'agente chiede di selezionare le versioni di destinazione. Scegliere la versione di Java desiderata e, se applicabile, la versione spring boot per il progetto.
Esaminare e modificare il piano di aggiornamento
GitHub Copilot modernizzazione analizza il progetto Java nell'area di lavoro corrente, tra cui JDK, strumenti di compilazione e dipendenze. Lo strumento genera un file plan.md che include:
- Strumenti disponibili : sono stati rilevati JDK e strumenti di compilazione nell'ambiente in uso.
- Linee guida : vincoli specificati dall'utente per il processo di aggiornamento.
- Opzioni : ramo di lavoro e configurazione di test.
- Obiettivi di aggiornamento : versioni di origine e di destinazione per ogni componente.
- Stack di tecnologie : analisi della compatibilità delle dipendenze con motivi di incompatibilità.
- Aggiornamenti derivati: aggiornamenti aggiuntivi richiesti dalle destinazioni primarie, ad esempio javax → migrazione dello spazio dei nomi jakarta durante l'aggiornamento a Spring Boot 3.x.
- Analisi dell'impatto : suddivisione dettagliata delle modifiche alle dipendenze, modifiche al codice sorgente, modifiche alla configurazione, modifiche di CI/CD e rischi.
- Passaggi di aggiornamento : passaggi di migrazione ordinati con criteri razionali e di verifica.
Esaminare il piano e apportare modifiche, se necessario, quindi confermare di procedere. Per altre informazioni sulla personalizzazione, vedere Personalizzare il piano di aggiornamento.
Suggerimento
Assicurarsi che il piano corrisponda alle destinazioni di aggiornamento desiderate, ad esempio Java 8 a Java 21, Spring Boot 1.5 a 3.5.
Eseguire l'aggiornamento
Dopo aver confermato il piano, l'agente procede automaticamente con la fase di trasformazione del codice. Come parte di questo processo, esegue le attività seguenti:
- Modifica il codice e i file di configurazione per garantire la compatibilità con le versioni di destinazione.
- Esegue la convalida della compilazione per verificare che il progetto venga compilato correttamente in ogni passaggio.
- Esegue la convalida dei test se abilitata nelle opzioni del piano.
L'agente esegue l'iterazione di ogni passaggio di aggiornamento fino al completamento di tutti i passaggi. È possibile monitorare lo stato di avanzamento in qualsiasi momento controllando il file progress.md nell'editor.
Convalida e correzione CVE
Al termine dei passaggi di trasformazione del codice, l'agente analizza automaticamente le dipendenze per individuare problemi comuni di vulnerabilità ed esposizioni (CVE). Se vengono rilevati CVE, l'agente li corregge aggiornando le dipendenze interessate. Non è necessario alcun intervento manuale. Il passaggio di convalida finale viene quindi eseguito per confermare che tutti gli elementi vengono ancora compilati e superati i test dopo le correzioni CVE.
Visualizzare il riepilogo
Dopo l'aggiornamento, lo strumento genera un file summary.md , che include:
- Sintesi esecutiva — una sintesi in un paragrafo degli aggiornamenti effettuati e dei risultati ottenuti.
- Miglioramenti dell'aggiornamento : una tabella di confronto prima/dopo con i vantaggi principali.
- Compilazione e convalida : stato della compilazione e risultati dei test.
- Limitazioni: eventuali problemi non risolti rimanenti dopo l'aggiornamento.
- Passaggi successivi consigliati : azioni di follow-up suggerite, ad esempio la generazione di unit test o l'indirizzamento di eventuali CVE rimanenti senza prefisso.
- Dettagli aggiuntivi : metadati del progetto, modifiche al codice e risultati dell'analisi CVE.
Passo successivo
Quickstart: generare test unitari con la modernizzazione GitHub Copilot