Partager via


Personnaliser le plan de mise à niveau du projet Java lors de l'utilisation de la modernisation des applications avec GitHub Copilot

Cet article explique comment personnaliser le plan de mise à niveau du projet Java généré par la modernisation des applications GitHub Copilot.

Lorsque vous lancez une session de mise à niveau, GitHub Copilot génère un fichier plan.md qui décrit les étapes et les tâches requises pour la mise à niveau. Ce fichier sert de blueprint pour le processus de mise à niveau, que vous pouvez personnaliser pour mieux répondre aux besoins de votre projet.

Une fois que l’outil a généré le fichier plan.md , il s’ouvre automatiquement dans l’éditeur Visual Studio Code. À ce stade, vous pouvez passer en revue et personnaliser le plan pour vous assurer qu’il s’aligne sur vos objectifs de mise à niveau spécifiques.

Exemple de structure de fichiers plan.md

Les sections suivantes décrivent un exemple de structure de fichiers plan.md afin d’illustrer les points de personnalisation.

Paramètres clés

Les sections suivantes décrivent les paramètres clés dans le plan que vous pouvez modifier.

Option de commande de l’outil de construction

Cette option se trouve sous Informations sur le projet et vous permet de définir des paramètres de ligne de commande personnalisés pour l’exécution de l’outil de génération. Pour obtenir des options valides, consultez la documentation de l’interface CLI Maven ou Gradle , en fonction de votre projet.

Exemples :

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

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

Note

Remplacez le chemin d’accès par l’emplacement réel de votre fichier settings si nécessaire. Ce chemin d’accès illustré n’est qu’un exemple.

Capture d’écran de Visual Studio Code montrant un exemple de plan de mise à niveau avec des cibles de mise à niveau mises en surbrillance.

Validation des tests

Situé sous la section Tâches supplémentaires , vous pouvez activer ou désactiver l’exécution des tests en modifiant l’indicateur run tests before and after the upgrade .

  • Définissez true pour activer les tests unitaires avant et après la mise à niveau.
  • Définissez sur false pour ignorer la validation des tests.

Ce paramètre contrôle si l’outil exécute des tests unitaires pour vérifier l’exactitude fonctionnelle pendant la mise à niveau.

En ajustant ces paramètres, vous pouvez affiner le processus de mise à niveau pour mieux répondre aux besoins de votre projet.

Personnaliser les objectifs de mise à niveau et fournir des instructions

Dans les scénarios de mise à niveau Java, vous avez souvent besoin de personnalisation au-delà des mises à niveau JDK standard ou des mises à niveau de framework , par exemple pour appliquer des modifications de code spécifiques au projet ou pour mettre à jour des bibliothèques internes, l’outil ne détecte pas automatiquement. Pour prendre en charge ces besoins, la modernisation des applications GitHub Copilot active désormais la personnalisation dans le plan de mise à niveau. Cette fonctionnalité vous permet de fournir vos propres recettes, instructions et entrées pour guider le processus de mise à niveau. Vous pouvez effectuer cette personnalisation en modifiant les sections Objectifs et Recommandations de mise à niveau.

Section Objectifs de mise à niveau

Dans la section Objectifs de mise à niveau, vous pouvez désormais spécifier davantage de cibles de mise à niveau, ainsi que les objectifs de votre invite initiale. Par exemple, si la tâche principale consiste à mettre à niveau le projet de Java 17 vers Java 21, mais que le projet nécessite également la mise à niveau de Log4j de 1.x à 2.x, vous pouvez répertorier cela comme objectif supplémentaire, comme indiqué dans l’exemple d’invite suivant :

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

Section Consignes

La section Instructions définit la façon dont Copilot doit effectuer la mise à niveau. Bien que la section Objectifs de mise à niveau se concentre sur ce qui doit être mis à niveau, la section Recommandations capture la méthodologie, les conventions, les outils et les règles qui guident le comportement de Copilot pendant la transformation du code.

Vous pouvez inclure toutes les instructions qui vous aident à guider la façon dont Copilot modifie le code, comme les instructions suivantes :

  • Conseils sur les outils, recettes ou frameworks à utiliser pour les modifications de code.
  • Contraintes ou interdictions sur certaines approches de mise à niveau.
  • Exigences de style de code ou de convention.
  • Les liens vers des fichiers internes, de la documentation ou des scripts que l’agent peut accéder.
  • Les connaissances de domaine sont utiles pour résoudre les erreurs ou effectuer des mises à niveau.
  • Conditions requises pour la façon dont l’agent doit annoter ou commenter les modifications du code.
  • Instructions de nettoyage pour les artefacts temporaires créés pendant le processus de mise à niveau.

Le contenu de cette section peut être du texte brut, des liens hypertexte ou des références aux fichiers locaux tant que Copilot peut y accéder.

Exemples :

## 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.

Capture d’écran du plan de mise à niveau Java qui contient les sections Objectifs et Instructions de mise à niveau.

Voir aussi

Modernisation des applications GitHub Copilot