Mise à niveau des versions de Java avec Amazon Q Developer - Amazon Q Developer

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Mise à niveau des versions de Java avec Amazon Q Developer

Amazon Q Developer peut mettre à niveau vos applications Java vers de nouvelles versions de langage dans l’environnement de développement intégré (IDE). Les modifications qu'Amazon Q peut apporter pour mettre à niveau votre code incluent la mise à jour des composants de code obsolètes APIs ainsi que la mise à niveau des bibliothèques, des frameworks et des autres dépendances de votre code.

Pour transformer votre code, Amazon Q le crée d’abord dans la version de langage source, puis vérifie qu’il contient les informations nécessaires pour effectuer la transformation. Une fois que votre code a été transformé avec succès, vous vérifiez et acceptez les modifications dans votre IDE. Dans la mesure où Amazon Q Developer effectue les modifications minimales nécessaires pour rendre votre code mis à niveau compatible avec le JDK cible, une transformation supplémentaire est nécessaire pour mettre à niveau les bibliothèques et les dépendances de votre projet. Pour plus d’informations sur la manière dont Amazon Q transforme votre code, consultez Comment Amazon Q Developer transforme le code pour les mises à niveau du langage Java.

Mises à niveau Java prises en charge et IDEs

Amazon Q prend actuellement en charge les versions de code source Java et les versions cibles suivantes pour les transformations. La transformation du code vers la même version de Java inclut la mise à niveau des bibliothèques et des autres dépendances de la version du code source.

Mises à niveau de Java prises en charge
Version de code source Versions cibles prises en charge
Java 8 Java 17 et Java 21
Java 11 Java 17 et Java 21
Java 17 Java 17 et Java 21
Java 21

Java21

Amazon Q prend en charge les mises à niveau de Java dans les domaines suivants IDEs :

  • Modules dans JetBrains IDEs

  • Projets et espaces de travail dans Visual Studio Code

Étape 1 : Prérequis

Avant de continuer, vérifiez que vous avez bien terminé les étapes de Configuration d’Amazon Q dans votre IDE.

Avant de commencer une tâche de transformation de code, vérifiez que les prérequis suivants sont respectés :

  • Votre projet est écrit dans une version de Java prise en charge et est créé sur Maven.

  • Votre projet est créé correctement avec Maven dans votre IDE. Maven 3.8 ou version ultérieure est actuellement pris en charge.

  • Le JDK source de votre projet est disponible localement et constitue la version de votre code source. Par exemple, si vous transformez du code Java 8, votre installation JDK locale doit être le JDK 8.

  • Votre projet est créé en 55 minutes ou moins.

  • Votre projet est configuré correctement et la version appropriée du JDK est spécifiée. Pour de plus amples informations, veuillez consulter Étape 2 : configuration de votre projet Maven.

  • Votre projet ne requiert pas d’accès aux ressources de votre réseau privé, y compris à un cloud privé virtuel (VPC) ou à un réseau sur site. Par exemple, si votre projet contient des tests unitaires qui se connectent à une base de données de votre réseau, la transformation échouera.

  • Votre projet n’utilise pas de plug-ins qui créent des packages de langages autres que Java dans votre projet Java. Par exemple, si votre projet utilise le frontend-maven-pluginpour exécuter du JavaScript code frontal en plus de votre code source Java, la transformation échouera.

  • Votre réseau local autorise les chargements vers des compartiments Amazon S3 qu’Amazon Q utilise pour transformer votre code. Pour plus d’informations, consultez Allow access to Amazon S3 buckets in data perimeters.

  • Votre application utilise uniquement des caractères UTF-8. Si votre application utilise des caractères non UTF-8, Amazon Q essaiera tout de même de transformer votre code.

Étape 2 : configuration de votre projet Maven

Pour configurer votre projet, utilisez les informations suivantes relatives à l’IDE que vous utilisez.

Configuration d’un projet dans JetBrains

Pour configurer votre projet dans JetBrains, vous devrez peut-être spécifier les paramètres de projet et de module suivants.

Si vos modules utilisent le même JDK et le même niveau de langage que votre projet, vous n’aurez pas besoin de mettre à jour les paramètres de module.

  • Kit SDK du projet : JDK utilisé pour compiler votre projet.

  • Niveau de langage du projet : version de Java utilisée dans votre projet.

  • Kit SDK du module : JDK utilisé pour compiler votre module.

  • Niveau de langage du module : version de Java utilisée dans votre module.

  • Maven Runner JRE : JDK avec lequel vous créez votre module.

Mise à jour des paramètres du projet et du module

Pour mettre à jour votre kit SDK et les paramètres de niveau de langage pour votre projet ou module, procédez comme suit :

  1. Dans votre IDE JetBrains, choisissez Fichier, puis Structure du projet.

  2. La fenêtre Structure du projet s’ouvre. Sous Paramètres du projet, choisissez Projet.

    1. Pour mettre à jour le JDK de votre projet, choisissez-le dans la liste déroulante en regard de Kit SDK.

    2. Pour mettre à jour le langage de votre projet, choisissez-le dans le menu déroulant à côté de Niveau de langage.

  3. Sous Paramètres du projet, choisissez Modules.

    1. Pour mettre à jour le JDK de votre module, choisissez-le dans la liste déroulante en regard de Kit SDK.

    2. Pour mettre à jour le langage de votre module, choisissez-le dans le menu déroulant en regard du niveau de langage.

Pour plus d’informations, consultez Paramètres de structure de projet et Paramètres de structure de module dans la documentation JetBrains.

Mise à jour de vos paramètres Maven

Pour mettre à jour votre JRE Maven Runner, procédez comme suit :

  1. Dans votre IDE JetBrains, choisissez l’icône d’engrenage, puis Paramètres dans le menu qui s’ouvre.

  2. Dans la fenêtre Paramètres, choisissez Création, Exécution, Déploiement, puis Outils de création, Maven et Runner.

  3. Dans le champ JRE, choisissez le JDK utilisé pour créer le module que vous transformez.

Configuration d’un projet dans VS Code

Pour configurer votre projet en VS Code, le projet doit contenir les éléments suivants :

  • Un fichier pom.xml dans le dossier racine de votre projet

  • Un fichier .java dans le répertoire de votre projet

Si votre projet contient un wrapper Maven exécutable (mvnw pour macOS ou mvnw.cmd pour Windows), assurez-vous qu’il se trouve à la racine de votre projet. Amazon Q utilise le wrapper et aucune autre configuration Maven n’est nécessaire.

Si vous n’utilisez pas de wrapper Maven, installez Maven. Pour plus d’informations, consultez Installation d’Apache Maven dans la documentation Apache Maven.

Après l’installation de Maven, ajoutez-le à votre variable PATH. Pour plus d’informations, consultez Comment ajouter Maven à mon PATH ?. Votre variable runtime Java doit également pointer vers un JDK et non vers un JRE. Pour vérifier que votre configuration est correcte, exécutez mvn -v. La sortie doit afficher votre version Maven et la variable runtime pointant vers le chemin d’accès à votre JDK.

Étape 3 : création d’un fichier de mise à niveau des dépendances (facultatif)

Vous pouvez fournir à Amazon Q un fichier de mise à niveau des dépendances, un fichier YAML répertoriant les dépendances de votre projet et les versions vers lesquelles effectuer la mise à niveau lors d’une transformation. En fournissant un fichier de mise à niveau des dépendances, vous pouvez spécifier les dépendances tierces et internes qu’Amazon Q ne serait peut-être pas en mesure de mettre à niveau autrement.

Les dépendances internes font référence aux bibliothèques, aux plug-ins et aux cadres gérés par votre organisation et qui ne sont disponibles que localement ou sur le réseau privé de votre organisation. Amazon Q est en mesure d’accéder à vos dépendances internes lorsqu’il réalise des builds dans votre environnement local. Pour de plus amples informations, veuillez consulter Création du code dans votre environnement local. Les dépendances tierces sont des dépendances accessibles au public ou des dépendances open source qui ne sont pas propres à votre organisation.

Vous pouvez spécifier les dépendances internes que vous souhaitez mettre à niveau dans un fichier YAML et Amazon Q les met à niveau lors de la mise à niveau du JDK (par exemple, Java 8 vers 17). Vous pouvez lancer une transformation distincte (17 vers 17 ou 21 vers 21) après la mise à niveau initiale du JDK pour mettre à niveau les dépendances tierces.

Une fois qu’Amazon Q a effectué une mise à niveau minimale du JDK, vous pouvez lancer une transformation distincte pour mettre à niveau toutes les dépendances tierces. Vous pouvez également spécifier les dépendances tierces et leurs versions dans un fichier YAML pour ne mettre à niveau ces dépendances que lors de la transformation de mise à niveau de la bibliothèque.

Amazon Q vous demandera de fournir un fichier de mise à niveau des dépendances lors de la transformation. Si vous souhaitez en fournir un, vérifiez d’abord que le fichier a été configuré correctement. Les champs suivants sont obligatoires dans le fichier YAML :

  • nom : nom du fichier de mise à niveau des dépendances.

  • description (facultatif) : description du fichier de mise à niveau des dépendances et pour quelle transformation.

  • dependencyManagement : contient la liste des dépendances et des plug-ins à mettre à niveau.

  • dépendances : contient le nom et la version des bibliothèques à mettre à niveau.

  • plug-ins : contient les noms et les versions des plug-ins à mettre à niveau.

  • identifiant : nom de la bibliothèque, du plug-in ou de toute autre dépendance.

  • targetVersion : version de la dépendance vers laquelle effectuer la mise à niveau.

  • versionProperty (facultatif) : version de la dépendance que vous définissez, telle que définie avec la balise properties dans le fichier pom.xml de votre application.

  • originType : indique si la dépendance est interne ou tierce ; spécifié par FIRST_PARTY ou THIRD_PARTY.

Voici un exemple de fichier YAML de mise à niveau des dépendances et la configuration requise pour qu’Amazon Q puisse l’analyser :

name: dependency-upgrade description: "Custom dependency version management for Java migration from JDK 8/11/17 to JDK 17/21" dependencyManagement: dependencies: - identifier: "com.example:library1" targetVersion: "2.1.0" versionProperty: "library1.version" # Optional originType: "FIRST_PARTY" - identifier: "com.example:library2" targetVersion: "3.0.0" originType: "THIRD_PARTY" plugins: - identifier: "com.example.plugin" targetVersion: "1.2.0" versionProperty: "plugin.version" # Optional originType: "THIRD_PARTY"

Étape 4 : transformation de votre code

Pour tester la configuration de votre IDE, téléchargez et décompressez l’exemple de projet, puis effectuez les étapes suivantes pour votre IDE. Si vous pouvez consulter les modifications proposées et le résumé des transformations, vous êtes prêt à transformer votre propre projet de code. Si la transformation échoue, votre IDE n’est pas configuré correctement. Pour résoudre les problèmes de configuration, consultez Étape 2 : configuration de votre projet Maven et Résolution de problème.

Note

N’éteignez pas, ne fermez pas et ne mettez pas votre machine locale en veille pendant la transformation du code. Les versions initiale et de validation utilisent l’environnement côté client, qui nécessite une connexion réseau stable.

Suivez ces étapes pour mettre à niveau la version du langage de codage de votre projet ou de votre module de code.

JetBrains
  1. Ouvrez le module dans lequel vous souhaitez mettre à niveau JetBrains. Assurez-vous d’avoir généré correctement votre projet dans l’IDE.

  2. Choisissez le logo Amazon Q et demandez à Amazon Q de transformer votre application dans le panneau de discussion qui s'ouvre.

  3. La fenêtre contextuelle Transformer votre application s’affiche. Choisissez le projet que vous souhaitez mettre à niveau dans la liste déroulante, puis Transformer.

  4. Amazon Q vous invite à fournir un fichier de dépendance de mise à niveau. Si vous avez configuré un fichier YAML avec les dépendances et la version vers lesquelles effectuer la mise à niveau, ajoutez-le. Amazon Q validera le fichier pour s’assurer qu’il a été configuré correctement. Si un message d’erreur s’affiche, vérifiez le format et les champs obligatoires décrits dans Étape 3 : création d’un fichier de mise à niveau des dépendances (facultatif).

  5. Amazon Q entame la transformation. Vous pouvez consulter la progression dans l’onglet Détails de la transformation.

  6. Une fois la transformation terminée, vous pouvez vérifier le code mis à niveau avant de mettre à jour votre projet. Pour afficher le nouveau code, accédez à l’onglet Détails de la transformation, puis choisissez Afficher la comparaison. Dans la fenêtre Appliquer le correctif qui apparaît, choisissez un fichier pour ouvrir une vue comparative comportant votre code source et le code mis à niveau.

  7. Pour accepter les modifications apportées par Amazon Q, choisissez Afficher la comparaison pour ouvrir la fenêtre Appliquer le correctif. Sélectionnez tous les fichiers mis à jour, puis cliquez sur OK pour mettre à jour votre projet sur place.

  8. Pour obtenir des détails sur la façon dont votre code a été mis à niveau et les prochaines étapes suggérées, dans l’onglet Détails de la transformation, choisissez Afficher le résumé de la transformation.

Code Visual Studio
  1. Ouvrez le projet ou l’espace de travail que vous souhaitez mettre à niveau dans VS Code. Assurez-vous d’avoir bien créé votre projet dans l’IDE.

  2. Choisissez le logo Amazon Q et demandez à Amazon Q de transformer votre application dans le panneau de discussion qui s'ouvre.

  3. Choisissez le projet que vous souhaitez mettre à niveau dans la barre de recherche en haut de l’IDE.

  4. Si Amazon Q ne trouve pas la version de votre code source, il vous invite à choisir la version de votre code. Choisissez la version dans laquelle votre code source est écrit, puis choisissez Transformer dans la fenêtre contextuelle pour continuer.

  5. Si vous y êtes invité, saisissez le chemin d’accès JAVA_HOME de votre JDK. Pour plus d’informations, consultez Configuration de votre projet VS Code.

  6. Amazon Q vous invite à fournir un fichier de dépendance de mise à niveau. Si vous avez configuré un fichier YAML avec les dépendances et la version vers lesquelles effectuer la mise à niveau, ajoutez-le. Amazon Q validera le fichier pour s’assurer qu’il a été configuré correctement. Si un message d’erreur s’affiche, vérifiez le format et les champs obligatoires décrits dans Étape 3 : création d’un fichier de mise à niveau des dépendances (facultatif).

  7. Amazon Q entame la transformation. Vous pouvez consulter la progression dans l’onglet Hub de transformation.

  8. Une fois la transformation terminée, l’onglet Modifications proposées s’ouvre. Pour vérifier le code mis à jour avant de mettre à jour votre projet, choisissez Télécharger les modifications proposées. Choisissez un fichier pour ouvrir une vue comparative avec votre code source et le code mis à jour.

  9. Pour accepter les modifications apportées par Amazon Q, accédez à l’onglet Modifications proposées, puis choisissez Accepter.

  10. Pour obtenir des informations sur la manière dont votre code a été mis à niveau et sur les prochaines étapes suggérées, accédez au Hub de transformation, cliquez sur le bouton avec les points de suspension Vues et autres actions, puis sur Afficher le résumé de la transformation.