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.
Rubriques
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.
| 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-plugin
pour 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 :
-
Dans votre IDE JetBrains, choisissez Fichier, puis Structure du projet.
-
La fenêtre Structure du projet s’ouvre. Sous Paramètres du projet, choisissez Projet.
-
Pour mettre à jour le JDK de votre projet, choisissez-le dans la liste déroulante en regard de Kit SDK.
-
Pour mettre à jour le langage de votre projet, choisissez-le dans le menu déroulant à côté de Niveau de langage.
-
-
Sous Paramètres du projet, choisissez Modules.
-
Pour mettre à jour le JDK de votre module, choisissez-le dans la liste déroulante en regard de Kit SDK.
-
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
Mise à jour de vos paramètres Maven
Pour mettre à jour votre JRE Maven Runner, procédez comme suit :
-
Dans votre IDE JetBrains, choisissez l’icône d’engrenage, puis Paramètres dans le menu qui s’ouvre.
-
Dans la fenêtre Paramètres, choisissez Création, Exécution, Déploiement, puis Outils de création, Maven et Runner.
-
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.xmldans le dossier racine de votre projet -
Un fichier
.javadans 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
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
propertiesdans le fichierpom.xmlde 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.