Partilhar via


Personalizar o plano de atualização do projeto Java ao usar a modernização do aplicativo GitHub Copilot

Este artigo descreve como personalizar o plano de atualização do projeto Java gerado pela modernização do aplicativo GitHub Copilot.

Quando você inicia uma sessão de atualização, o GitHub Copilot gera um arquivo de plan.md que descreve as etapas e tarefas necessárias para a atualização. Este arquivo serve como um modelo para o processo de atualização, que você pode personalizar para melhor atender às necessidades do seu projeto.

Depois que a ferramenta gera o arquivo plan.md , ele abre automaticamente no editor de código do Visual Studio. Nesta etapa, você pode revisar e personalizar o plano para garantir que ele esteja alinhado com suas metas específicas de atualização.

Estrutura de ficheiro de exemplo plan.md

As seções a seguir descrevem um exemplo plan.md estrutura de arquivo para ilustrar os pontos de personalização.

Parâmetros-chave

As secções seguintes descrevem parâmetros-chave do plano que pode modificar.

Opção de comando da ferramenta de compilação

Essa opção está localizada em Informações do Projeto e permite que você defina parâmetros de linha de comando personalizados para a execução da ferramenta de compilação. Para obter opções válidas, consulte a documentação da CLI do Maven ou da CLI do Gradle , dependendo do seu projeto.

Examples:

  • Para o Maven: Build tool command options: -Dmaven.javadoc.skip=true -s "/path/to/custom/settings.xml"

  • Para Gradle: Build tool command options: --info -Penv=production

Observação

Substitua o caminho pela localização real settings do ficheiro, conforme necessário. Este caminho mostrado é apenas um exemplo.

Captura de tela do Visual Studio Code que mostra um exemplo de plano de atualização com destinos de atualização realçados.

Validação do teste

Localizado na seção Tarefas Adicionais , você pode habilitar ou desabilitar a execução do teste modificando o run tests before and after the upgrade sinalizador.

  • Defina para true habilitar testes de unidade antes e depois da atualização.
  • Definir para false para ignorar a validação do teste.

Essa configuração controla se a ferramenta executa testes de unidade para verificar a correção funcional durante a atualização.

Ao ajustar essas configurações, você pode ajustar o processo de atualização para melhor atender aos requisitos do seu projeto.

Personalize os objetivos de atualização e forneça diretrizes

Em cenários de atualização de Java, muitas vezes é necessária personalização para além das atualizações padrão de JDK ou framework – por exemplo, para aplicar alterações de código específicas de um projeto ou para atualizar bibliotecas internas que a ferramenta não detete automaticamente. Para suportar estas necessidades, a modernização da aplicação GitHub Copilot permite agora a personalização dentro do plano de atualização. Esta capacidade permite-lhe fornecer as suas próprias receitas, instruções e inputs para orientar o processo de atualização. Pode fazer esta personalização modificando as secções de Objetivos e Diretrizes de Melhoria.

A secção de Objetivos de Melhoria

Na secção de Objetivos de Melhoria , pode agora especificar mais metas de melhoria juntamente com os objetivos no seu prompt inicial. Por exemplo, se a tarefa principal for atualizar o projeto de Java 17 para Java 21, mas o projeto também exigir a atualização do Log4j de 1.x para 2.x, pode listar isso como um objetivo adicional, como mostrado no seguinte exemplo de prompt:

## Upgrade Goals
- Upgrade from Java 17 to 21
- Upgrade org.apache.logging.log4j:* to 2.24.3 
- Upgrade org.internal.lib to 2.0

A secção de Diretrizes

A secção de Diretrizes define como o Copilot deve realizar a atualização. Enquanto a secção de Objetivos de Atualização se foca no que precisa de ser atualizado, a secção de Diretrizes resume a metodologia, convenções, ferramentas e regras que orientam o comportamento do Copilot durante a transformação do código.

Pode incluir quaisquer instruções que ajudem a orientar a forma como o Copilot modifica o código, tais como as seguintes instruções:

  • Orientações sobre que ferramentas, receitas ou frameworks usar para alterações de código.
  • Restrições ou proibições sobre certas abordagens de atualização.
  • Requisitos de estilo de código ou convenção.
  • Ligações para ficheiros internos, documentação ou scripts a que o agente pode aceder.
  • Conhecimento do domínio útil para corrigir erros ou realizar atualizações.
  • Requisitos sobre como o agente deve anotar ou comentar alterações de código.
  • Instruções de limpeza para artefactos temporários criados durante o processo de atualização.

O conteúdo desta secção pode ser texto simples, hiperligações ou referências a ficheiros locais, desde que o Copilot possa aceder a eles.

Examples:

## Guidelines
- Do not use Log4j 1 to Log4J 2 API bridge to upgrade to Log4J 2. 
- Please follow the code conventions defined in /xxx/bbb/rules.txt.
- Please provide detailed comments explaining why each code change is necessary.
- "com.example:internal-lib:2.0.0" is compatible with Java 21.
- Use our internal MCP tool get_internal_lib_knowledge to retrieve compatibility information for internal libraries.
- After the upgrade, please remove any temporary files created during the process, such as code modification scripts.

Captura de ecrã do plano de atualização Java que contém as secções de Objetivos de Atualização e Diretrizes.

Consulte também

Modernização do aplicativo GitHub Copilot