Partager via


FAQ sur la modernisation des applications GitHub Copilot

Répond aux questions fréquemment posées sur la modernisation des applications GitHub Copilot.

FAQ

Quelle est l’étendue du produit de la modernisation de l’application GitHub Copilot ?

Nous reconnaissons que le processus de migration est toujours complexe et entrelacé, avec différentes couches d’écosystèmes d’applications. À ce stade, nous limitons l’étendue de migration aux applications back-end Java. Nous prenons en charge les projets créés avec Maven ou Gradle. Pour plus d’informations sur les fonctionnalités de produit clés, consultez la vue d’ensemble de la modernisation des applications GitHub Copilot.

La modernisation des applications GitHub Copilot sera-t-elle ouverte à l’avenir ?

Nous n’avons actuellement aucun projet de modernisation des applications GitHub Copilot open source.

Quel plan de licence GitHub Copilot dois-je utiliser la modernisation des applications GitHub Copilot ?

La modernisation des applications GitHub Copilot est disponible pour n’importe quel plan GitHub Copilot.

Comment la modernisation des applications GitHub Copilot est-elle facturée ?

La modernisation des applications GitHub Copilot est une fonctionnalité de GitHub Copilot et partage le même modèle de facturation d’abonnement que GitHub Copilot. Les tâches de modernisation des applications consomment des demandes Premium, chaque plan d’abonnement offrant une allocation mensuelle de demandes Premium. Le dépassement de la limite de plan nécessite une mise à niveau de plan ou un achat supplémentaire de demandes Premium.

En plus de Java, j’ai également besoin de migrer des applications écrites dans d’autres langages. Existe-t-il un plan de modernisation des applications GitHub Copilot pour aller au-delà de Java ?

Actuellement, la modernisation des applications GitHub Copilot est axée sur l’assistance aux applications Java et .NET. Toutefois, nous collectons activement les exigences et les commentaires des clients concernant la nécessité de prendre en charge d’autres langues.

La modernisation des applications GitHub Copilot stocke-t-elle mon code source ?

No. La modernisation des applications GitHub Copilot utilise GitHub Copilot de la même façon que vous l’utilisez pour modifier le code, ce qui ne conserve pas les extraits de code au-delà de la session immédiate. Nous ne collectons, transmettons ou stockons vos tâches personnalisées.

Les métriques de télémétrie sont collectées et analysées pour suivre l’utilisation et l’efficacité des fonctionnalités.

Pour plus d’informations, consultez la Déclaration de confidentialité de Microsoft.

Quel type d’application avez-vous utilisé pour évaluer la modernisation des applications GitHub Copilot ?

Nous avons testé la modernisation des applications GitHub Copilot sur des centaines de référentiels open source pour garantir la réussite des tests unitaires, de cohérence et de génération après le processus de modernisation. Nous avons également travaillé en grande partie avec les clients pendant la phase Technical Preview. L’entrée des utilisateurs est utilisée pour améliorer l’expérience produit. Vous pouvez envoyer des commentaires à l’aide de ce lien.

Quelles infrastructures la modernisation des applications GitHub Copilot est-elle optimisée dans les scénarios de mise à niveau ?

Bien que la modernisation des applications Copilot GitHub se concentre sur la mise à niveau des runtimes Java, elle optimise également les mises à niveau pour les infrastructures suivantes :

  • Spring Boot jusqu’à la version 3.5.
  • Java EE - Javax à Jakarta EE, jusqu’à Jakarta EE 10.
  • Spring Framework hérité jusqu’à la version 6.2+.
  • JUnit.
  • Différentes dépendances tierces.

Pour plus d’informations, consultez Personnaliser le plan de mise à niveau du projet Java.

Quelles sont les versions de Java prises en charge pour la mise à niveau ?

Nous prenons actuellement en charge les versions suivantes du Kit de développement Java (JDK) :

  • JDK 8
  • JDK 11
  • JDK 17
  • JDK 21
  • JDK 25

La version JDK minimale requise pour un projet est JDK 8 et vous pouvez mettre à niveau le projet pour utiliser n’importe quelle version jusqu’à JDK 21.

Quels types de projets Java sont pris en charge ?

Actuellement, seuls les types de projet suivants sont pris en charge :

  • Projets Maven (y compris Maven Wrapper)
  • Projets Gradle (Wrapper Gradle uniquement, version 5+)

Les projets Gradle basés sur Kotlin ne sont pas pris en charge.

Quelles sont les limitations des mises à niveau Java ?

Actuellement, l’extension présente les limitations fonctionnelles suivantes :

  • L’extension prend exclusivement en charge les mises à niveau Java et ne répond pas aux autres langages de programmation.
  • Il fonctionne uniquement avec les projets Java générés à l’aide de Maven et Gradle.
  • Seuls les référentiels Git sont pris en charge. Les autres systèmes de contrôle de version ne sont pas compatibles.
  • L’extension ne peut pas garantir que les modifications qu’il propose sont optimales ou considérées comme des meilleures pratiques.

Nous vous recommandons d’utiliser les meilleures pratiques suivantes avec cet outil :

  • Exécutez l’extension uniquement sur les projets qui répondent aux caractéristiques spécifiées, comme décrit précédemment.
  • Effectuez des révisions complètes du code avant de fusionner la sortie de l’extension dans des branches de production.
  • Exécutez tous les tests et effectuez les vérifications d’assurance qualité habituelles associées à votre processus de gestion des modifications selon les besoins.

Comment moderniser plusieurs applications en même temps et comment mettre à l’échelle l’expérience mod d’application pour un grand nombre d’applications ?

Vous pouvez utiliser l’interface CLI AppCAT pour analyser plusieurs projets en même temps à l’aide de l’indicateur -bulk . Toutefois, nous vous recommandons de moderniser un seul projet ou application à la fois. Vous pouvez créer votre propre tâche de migration en fonction des modifications de code d’un projet et les appliquer à d’autres projets, ce qui réduit le travail répétitif.

Quel modèle dois-je utiliser ?

En règle générale, les modèles plus récents surpassent les modèles précédents. Pour les tâches de codage, nous recommandons des modèles Claud Sonnet pour une meilleure précision. Toutefois, pour réduire les coûts, envisagez de commencer votre exploration à partir de modèles avec un multiplicateur inférieur.

Guide de résolution des problèmes

Quelles sont les limites de taille de jeton des principaux modèles ?

Pour obtenir des spécifications de modèle détaillées, consultez la documentation GitHub Copilot.

Quelles sont les exigences opérationnelles pour les mises à niveau du runtime et de l’infrastructure Java ?

Pour garantir la réussite des mises à niveau du runtime et de l’infrastructure Java, les informations suivantes sont requises :

  • Type de projet. Le projet doit être un projet Java basé sur Git pouvant être généré avec Maven ou Gradle.
  • La version Java cible - la version JDK vers laquelle vous souhaitez effectuer une mise à niveau - par exemple, Java 21.
  • Chemins JDK source et cible : chemins d’accès aux JDK installés pour les versions actuelles et cibles.
  • Configuration de Maven/Gradle : chemins d’accès aux outils de génération Maven/Gradle. Pour Gradle, seuls les wrappers Gradle sont pris en charge.

Comment la modernisation des applications GitHub Copilot utilise-t-elle le serveur MCP et comment puis-je rechercher les mises à jour ou résoudre les problèmes ?

La modernisation des applications GitHub Copilot utilise le serveur MCP pour améliorer les fonctionnalités de transformation du code. Après avoir installé l’extension Visual Studio Code, le serveur MCP est inscrit et démarre automatiquement.

Si vous remarquez un bouton d’actualisation spécial dans le coin inférieur droit du panneau GitHub Copilot Chat, il peut indiquer que les mises à jour des outils sont disponibles. Sélectionnez le bouton pour charger automatiquement les dernières versions des outils.

Le serveur MCP de modernisation des applications GitHub Copilot gère également les journaux. Pour résoudre les problèmes, vérifiez les fichiers journaux situés à l’adresse suivante : %USERPROFILE%/.ghcp-appmod-java/logs

Pourquoi la modernisation des applications GitHub Copilot s’arrête-t-elle après avoir listé un plan sans apporter de modifications de code ?

Parfois, la modernisation des applications GitHub Copilot nécessite une confirmation explicite avant de continuer. Vous pouvez taper oui ou continuer dans la conversation pour permettre à l’agent de progresser avec les modifications du code.

Capture d’écran du volet de conversation GitHub Copilot dans Visual Studio Code qui montre que la saisie de l’utilisateur continue en réponse à un plan de mise à jour.

Pourquoi la modernisation des applications GitHub Copilot m’invite-t-elle fréquemment à sélectionner **Continuer** ?

Pour garantir des opérations plus sûres, l’agent GitHub Copilot demande à plusieurs reprises la confirmation de l’utilisateur, vous pouvez utiliser la configuration suivante comme solution de contournement.

  • Pour Visual Studio Code, vous pouvez sélectionner la flèche déroulante en regard du bouton Continuer , puis sélectionner Toujours autoriser, ou mettre à jour votre paramètre chat.tools.autoApprove Visual Studio Code pour true approuver automatiquement tous les outils. Nous vous recommandons également de configurer chat.agent.maxRequests pour 128 réduire le nombre d’étapes qui nécessitent la confirmation de continuer.

    Capture d’écran du volet de conversation GitHub Copilot montrant le bouton Continuer et le menu déroulant avec les options Autoriser.

  • Pour Intellij IDEA, vous pouvez sélectionner le bouton Continuer ou mettre à jour vos paramètres, sélectionner la> fenêtre de configurationOutils GitHub Copilot, puis sélectionner Approuver automatiquement. Nous vous recommandons également d’activer les annotations de l’outil MCP de confiance et d’augmenter le nombre maximal de requêtes à 99.

    Capture d’écran du volet de conversation GitHub Copilot montrant le bouton Continuer dans Intellij IDEA.

Quelles configurations réseau sont requises pour utiliser la modernisation des applications GitHub Copilot dans Visual Studio Code ?

Pour garantir que l’extension fonctionne correctement dans Visual Studio Code, la connectivité réseau doit être stable et autoriser l’accès aux services GitHub Copilot. Dans les environnements restreints, vous devrez peut-être configurer des règles de proxy ou de pare-feu en conséquence. Si vous rencontrez des erreurs telles que « Modèle de langage indisponible » dans la fenêtre de conversation, consultez le guide de résolution des problèmes officiel qui gère l’accès GitHub Copilot au réseau de votre entreprise.

Existe-t-il des paramètres dans GitHub Copilot que je dois configurer pour vérifier que j’obtiens toutes les fonctionnalités ?

GitHub Copilot peut bloquer certaines générations de code pour les fichiers qui ressemblent généralement à du code public, comme pom.xml. Pour empêcher Copilot de bloquer ces modifications, vous devez autoriser les suggestions correspondant au code public. Pour obtenir des instructions, consultez Activation ou désactivation des suggestions correspondant au code public.

Pour gérer les paramètres de GitHub Copilot dans votre organisation, consultez Activation des fonctionnalités Copilot dans votre organisation.

Pourquoi ne vois-je pas d’outils dans la modernisation des applications GitHub Copilot qui utilisent le serveur MCP (Model Context Protocol) ?

La modernisation des applications GitHub Copilot utilise le serveur MCP pour fournir des fonctionnalités de migration spécialisées. Lorsque vous sélectionnez Actualiser, il établit une connexion avec ce serveur et met à jour les outils disponibles dans l’agent de conversation. Cette action n’est nécessaire que dans les cas suivants :

  • Lorsque vous ouvrez un projet Java pour la migration pour la première fois.
  • Lorsque vous mettez à niveau l’extension vers une version plus récente.

Pourquoi le processus de régénération du code est-il instable ?

La modernisation des applications GitHub Copilot est alimentée par l’IA, de sorte que des erreurs occasionnelles peuvent se produire. Passez toujours en revue attentivement la sortie avant l’utilisation. Vous pouvez également réessayer le processus de régénération pour voir d’autres suggestions de code.

Où sont stockées les tâches sur l’ordinateur local et comment peuvent-elles être partagées ?

Les tâches prédéfinies se trouvent à l’emplacement suivant : %USERPROFILE%.vscode\extensions\microsoft.migrate-java-to-azure-0.1.0\rag

Les tâches personnalisées se trouvent à l’emplacement suivant : %USERPROFILE%.azure\migrate-copilot\custom-rule

Comment puis-je afficher plus de détails sur les modifications de code apportées par l’agent ?

L’agent inclut toujours des explications sur ses modifications de code dans la fenêtre de conversation. Toutefois, ces détails peuvent être réduits dans l’interface utilisateur. Vous pouvez développer la réponse dans la conversation pour voir la logique complète et le raisonnement pas à pas.

Puis-je utiliser la fonctionnalité de modernisation des applications GitHub Copilot dans IntelliJ IDEA sur une plateforme Linux ?

Actuellement, nous prenons uniquement en charge les plateformes Windows et macOS.