A extensão de modernização de aplicativo GitHub Copilot em Visual Studio Code automatiza atualizações Java identificando estruturas desatualizadas, APIs preteridas e bloqueadores de atualização. agente de nuvem Copilot aplica alterações de código, atualiza arquivos de build e resolve problemas de build e CVE para você.
As recomendações e relatórios produzidos pela extensão podem ajudar suas equipes a adotar novas tecnologias rapidamente e reduzir a dívida técnica. Copilot orienta você por meio de atualizações com etapas e resumos acionáveis, acelerando e protegendo suas migrações, reduzindo o esforço manual.
Para obter recursos de extensão, configuração e instruções de interface do usuário, consulte A documentação de modernização do GitHub aplicativo Copilot na documentação do Microsoft.
Estrutura de modernização
Ao iniciar uma sessão de agente usando a extensão de atualização Java, a extensão ajudará você a modernizar seu aplicativo Java usando a estrutura a seguir.
-
**Execute tarefas de avaliação**. A extensão pode analisar código, configuração e dependências, fornecendo uma avaliação do estado atual do aplicativo. -
**Crie um plano de modernização personalizável**. Com base na avaliação, a extensão pode sugerir um caminho de modernização, incluindo as atualizações necessárias da estrutura e da biblioteca. -
**Identificação antecipada de problemas**. A extensão identifica dependências, bibliotecas desatualizadas e recursos de linguagem e possíveis problemas de migração. A extensão fornece estratégias acionáveis para corrigir problemas. -
**Personalize seu plano**. Edite o plano de modernização para as necessidades específicas do aplicativo, como incorporar padrões e práticas organizacionais, excluir determinados componentes ou priorizar recursos específicos ou padrões de design. -
**Implemente seu plano**. A extensão pode ajudar na aplicação de alterações de código, atualização de arquivos de build, refatoração de APIs preteridas e resolução de problemas de build e sintaxe. A extensão corrigirá automaticamente os erros de build e executará validações de teste após cada etapa para garantir a estabilidade e as alterações sem erros. <!-- markdownlint-disable-line GHD046 --> -
**Examine suas alterações**. A extensão pode produzir um relatório de atualização detalhado, resumindo as alterações aplicadas e listando quaisquer problemas não corrigidos e as etapas restantes para sua modernização. -
**Gerar testes de unidade**. A extensão avalia automaticamente os testes existentes e gera novos arquivos de teste e os adiciona ao workspace. Um relatório é produzido resumindo os resultados do teste de pré e pós-geração. -
**Conteinerize seu aplicativo**. A extensão pode gerar automaticamente Dockerfiles, criar imagens e validar tudo para que seu aplicativo modernizado seja executado dentro dos serviços de contêiner, como AKS (Serviço de Kubernetes do Azure), Aplicativos de Contêiner do Azure (ACA) e AKS Automatic, permitindo uma implantação e escalabilidade mais fáceis. -
**Prepare-se para a implantação**. A extensão pode ajudá-lo a preparar seu aplicativo para contêinerização e implantação, gerando artefatos de implantação, como scripts e configurações. -
**Automatizar a implantação no Azure**. A extensão pode ajudá-lo a implantar ou provisionar seu aplicativo modernizado para Azure, gerando artefatos necessários e Azure recursos e executando etapas de execução.
Você pode melhorar a compreensão da sua equipe sobre a base de código do aplicativo e economizar tempo e esforço usando Copilot para ajudar com tarefas complexas de modernização, como:
- Engenharia reversa e transformação de código
- Análise de vulnerabilidade e dependência e verificações de comportamento de código e correção
- Geração automatizada de ativos, documentação e relatórios de atualização
- Geração e avaliação de teste
- Automação de implantação
Visão geral do fluxo de trabalho de modernização
Neste exemplo, percorreremos as etapas de alto nível para modernizar um aplicativo Java usando a extensão de modernização de aplicativo GitHub Copilot em Visual Studio Code.
Para obter instruções e pré-requisitos detalhados, consulte Quickstart: atualize um projeto de Java com GitHub Copilot modernização do aplicativo na documentação do Microsoft.
Observação
Durante o fluxo de trabalho de modernização, você pode frequentemente ser solicitado por agente de nuvem Copilot a confirmar antes que ações específicas sejam executadas.
1. Abra seu projeto de Java
Use VS Code para abrir a pasta do projeto.
Ações sugeridas
- Verifique se o projeto compila com êxito antes de prosseguir.
- Se você encontrar problemas de compilação, você pode usar Copilot para ajudar a resolvê-los antes de iniciar o processo de modernização.
2. Iniciar um workspace de modernização
Inicie Bate-Papo Copilot e inicie uma nova sessão no modo de agente. Escolha GitHub Copilot modernização de aplicativo – atualização para Java das ferramentas disponíveis.
3. Analisar seu projeto em busca de oportunidades de atualização
Copilot examinará sua base de código. A análise inclui:
- Detecção de estruturas desatualizadas (por exemplo, Spring Boot, Jakarta EE, versões Java SE).
- Identificação de APIs preteridas e padrões obsoletos.
- Sugestões de oportunidades de atualização.
Você pode examinar as descobertas e um plano de atualização estruturado no editor, que exibirá:
- Versões atuais e recomendadas para estruturas e dependências.
- Locais de código que exigem migração ou refatoração.
- Atualizar bloqueadores ou dependências incompatíveis.
Ações sugeridas
- Examine e personalize o plano de modernização antes de prosseguir com a atualização.
4. Aplicar Copilot recomendações de atualização
Use Copilot para aplicar ou revisar alterações de código, atualizar arquivos de build e APIs de refatoração.
Se forem encontrados erros de build, Copilot poderá inserir um loop de correção e teste até que o projeto seja compilado de forma limpa.
agente de nuvem Copilot as alterações automatizadas podem incluir:
-
Atualizando os arquivos
pom.xmloubuild.gradlepara novas versões das dependências. -
Gerando solicitações de pull ou confirmando alterações diretamente.
-
Refatoração de código para alterações de API. Por exemplo, migrando de
javax.*parajakarta.*namespaces. -
Sugerindo ou aplicando transformações de código para resolver alterações interruptivas.
Copilot itera e continua a corrigir erros até que o projeto seja compilado com êxito e não haja mais problemas que exijam correção. É possível que problemas menores que não exijam correções imediatas possam permanecer. Isso não impedirá a conclusão da atualização.
Ações sugeridas
- Examine todas as alterações de código em seu editor de diferenciação antes de aceitar.
- Use Copilot para explicar mais e documentar alterações de código.
- Quando a extensão solicitar que você faça isso, aceite as opções para verificar as dependências modificadas para CVEs conhecidos e validar o comportamento do código quanto à consistência.
- Examine os problemas restantes e avalie sua importância.
5. Exibir o relatório de atualização e as próximas etapas sugeridas
Depois que o processo de atualização for concluído, Copilot gerará um relatório de atualização resumida que inclui:
- Informações do Projeto
- Linhas de código alteradas.
- Dependências atualizadas.
- Alterações de código resumidas.
- Correção de problemas de inconsistência de código e segurança CVE, se houver.
- Problemas de CVE secundários não corrigidos.
Ações sugeridas
- Examine o relatório para entender as alterações feitas.
- Siga as próximas etapas sugeridas para finalizar sua modernização.
Concluindo a modernização
Mais atividades para apoiar sua modernização podem incluir:
-
**Verificar** a modernização inicial e as alterações de código cuidadosamente. Verifique se os padrões de codificação e as práticas recomendadas da sua empresa são atendidos. -
**Examinar** o código modificado de perto. Por exemplo, verifique se o código gerado se ajusta à finalidade e à arquitetura do seu projeto. Para obter mais sugestões, consulte [AUTOTITLE](/copilot/tutorials/review-ai-generated-code). -
**Correção de bugs**. Verifique o conteúdo específico para erros sutis e use suas próprias ferramentas de depuração e linagem para avaliar o novo conteúdo. -
**Escrevendo testes** e identificando lacunas nos testes para o projeto aprimorado. -
**Limpar** o projeto removendo todos os arquivos que não são mais necessários. -
**Refatorar** o código na nova linguagem. O processo de modernização pode ter resultado em um projeto cuja arquitetura foi baseada na do seu projeto original, mas essa não é mais a solução ideal ou ideal para suas necessidades. Agora você pode querer refatorar o código para fazer o melhor uso dos recursos do idioma e da estrutura usada. -
**Atualizando a documentação**. As informações do projeto e os arquivos de contribuição agora podem estar desatualizados e precisam ser reescritos. -
**Contêinerização**. Atualize o código do aplicativo, gere arquivos de contêinerização, como Dockerfiles, e crie a imagem para testar a validade. Se necessário, Copilot pode executar essas tarefas de contêinerização e também criar um plano abrangente detalhando as próximas etapas. -
**Deploying** o aplicativo modernizado em seus ambientes de destino, incluindo plataformas de nuvem, como Microsoft Azure.