{"meta":{"title":"Modernizando aplicativos Java com GitHub Copilot","intro":"GitHub Copilot pode ajudar a modernizar e migrar aplicativos Java avaliando sua base de código, identificando caminhos de atualização e automatizando tarefas de correção e contêinerização.","product":"GitHub Copilot","breadcrumbs":[{"href":"/pt/copilot","title":"GitHub Copilot"},{"href":"/pt/copilot/tutorials","title":"Tutoriais"},{"href":"/pt/copilot/tutorials/modernize-java-applications","title":"Modernizar aplicativos Java"}],"documentType":"article"},"body":"# Modernizando aplicativos Java com GitHub Copilot\n\nGitHub Copilot pode ajudar a modernizar e migrar aplicativos Java avaliando sua base de código, identificando caminhos de atualização e automatizando tarefas de correção e contêinerização.\n\n<!-- expires 2026-10-31 -->\n\n<!-- When this expires, check with the stakeholder for release #18998 on whether or not the content is still needed -->\n\nA 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.\nCopilot cloud agent aplica alterações de código, atualiza arquivos de build e resolve problemas de build e CVE para você. <!-- markdownlint-disable-line GHD046 -->\n\nAs 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ê durante atualizações com etapas acionáveis e resumos, acelerando e protegendo suas migrações, além de reduzir o esforço manual.\n\nPara 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](https://learn.microsoft.com/en-us/azure/developer/github-copilot-app-modernization/) na documentação do Microsoft.\n\n## Estrutura de modernização\n\nAo iniciar uma sessão de agente usando a extensão de atualização [Java](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-upgrade), a extensão ajudará você a modernizar seu aplicativo Java usando a estrutura a seguir.\n\n* **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.\n* **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.\n* **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.\n* **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.\n* **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 -->\n* **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.\n* ```\n            **Gere 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.\n  ```\n* ```\n            **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.\n  ```\n* **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.\n* **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.\n\nVocê 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:\n\n* Engenharia reversa e transformação de código\n* Análise de vulnerabilidade e dependência e verificações de comportamento de código e correção\n* Geração automatizada de ativos, documentação e relatórios de atualização\n* Geração e avaliação de teste\n* Automação de implantação\n\n## Visão geral do fluxo de trabalho de modernização\n\nNeste 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.\n\nPara obter instruções e pré-requisitos detalhados, consulte [Quickstart: atualize um projeto de Java com GitHub Copilot modernização do aplicativo](https://learn.microsoft.com/en-us/java/upgrade/quickstart-upgrade) na documentação do Microsoft.\n\n> \\[!NOTE]\n> Durante o fluxo de trabalho de modernização, você pode ser frequentemente solicitado pelo Copilot cloud agent a confirmar antes que ele execute ações específicas.\n\n### 1. Abra seu projeto de Java\n\nUse VS Code para abrir a pasta do projeto.\n\n#### Ações sugeridas\n\n* Garanta que seu projeto seja compilado com sucesso antes de prosseguir.\n* Se você encontrar problemas de compilação, você pode usar Copilot para ajudar a resolvê-los antes de iniciar o processo de modernização.\n\n### 2. Iniciar um workspace de modernização\n\nInicie Copilot Chat 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.\n\n### 3. Analisar seu projeto em busca de oportunidades de atualização\n\nCopilot examinará sua base de código. A análise inclui:\n\n* Detecção de estruturas desatualizadas (por exemplo, Spring Boot, Jakarta EE, versões Java SE).\n* Identificação de APIs preteridas e padrões obsoletos. <!-- markdownlint-disable-line GHD046 -->\n* Sugestões de oportunidades de atualização.\n\nVocê pode examinar as descobertas e um plano de atualização estruturado no editor, que exibirá:\n\n* Versões atuais e recomendadas para estruturas e dependências.\n* Locais de código que exigem migração ou refatoração.\n* Atualizar bloqueadores ou dependências incompatíveis.\n\n#### Ações sugeridas\n\n* Examine e personalize o plano de modernização antes de prosseguir com a atualização.\n\n### 4. Aplicar Copilot recomendações de atualização\n\nUse Copilot para aplicar ou revisar alterações de código, atualizar arquivos de build e APIs de refatoração.\n\nSe forem encontrados erros de build, Copilot poderá inserir um loop de correção e teste até que o projeto seja compilado de forma limpa.\n\nCopilot cloud agent as alterações automatizadas podem incluir:\n\n* Atualizando arquivos `pom.xml` ou `build.gradle` para novas versões de dependências.\n* Gerando pull requests ou fazendo commits de alterações diretamente.\n* Refatoração de código para alterações de API. Por exemplo, migrando de `javax.*` para `jakarta.*` namespaces.\n* Sugerindo ou aplicando transformações de código para resolver alterações interruptivas.\n\nCopilot 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.\n\n#### Ações sugeridas\n\n* Examine todas as alterações de código em seu editor de diferenciação antes de aceitar.\n* Use Copilot para explicar mais e documentar alterações de código.\n* Quando a extensão solicitar, aceite as opções para verificar dependências modificadas em busca de CVEs conhecidas e para validar a consistência do comportamento do código.\n* Examine os problemas restantes e avalie sua importância.\n\n### 5. Exibir o relatório de atualização e as próximas etapas sugeridas\n\nDepois que o processo de atualização for concluído, Copilot gerará um relatório de atualização resumida que inclui:\n\n* Informações do Projeto\n* Linhas de código alteradas.\n* Dependências atualizadas.\n* Alterações de código resumidas.\n* Correção de problemas de inconsistência de código e segurança CVE, se houver.\n* Problemas de CVE secundários não corrigidos.\n\n#### Ações sugeridas\n\n* Examine o relatório para entender as alterações feitas.\n* Siga as próximas etapas sugeridas para finalizar sua modernização.\n\n### Concluindo a modernização\n\nMais atividades para apoiar sua modernização podem incluir:\n\n* **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.\n* **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 [Examinar o código gerado por IA](/pt/copilot/tutorials/review-ai-generated-code).\n* **Correção de bugs**. Verifique conteúdo específico em busca de erros sutis e utilize suas próprias ferramentas de depuração e linting para avaliar o novo conteúdo.\n* **Escrevendo testes** e identificando lacunas nos testes para o projeto aprimorado.\n* **Limpar** o projeto removendo todos os arquivos que não são mais necessários.\n* **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.\n* **Atualizando a documentação**. As informações do projeto e os arquivos de contribuição agora podem estar desatualizados e precisam ser reescritos.\n* **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.\n* ```\n            **Implantando** o aplicativo modernizado em seus ambientes de destino, incluindo plataformas em nuvem como o Microsoft Azure.\n  ```\n\n<!-- end expires 2026-10-31 -->"}