Configurer les versions compatibles de Java pour exécuter des Jobs ou des microservices
Configurez votre moteur distant (Remote Engine) pour exécuter des Jobs ou des microservices à l'aide de la version Java adaptée, en vous basant sur ces niveaux de compatibilité des versions Java et des artefacts.
Par défaut, un moteur distant utilise la version de Java de son environnement, pour exécuter des Jobs ou des microservices. À partir de la version 2.13 du moteur distant (Remote Engine), Java 17 est obligatoire pour démarrer le moteur.
- Recommandation pour les moteurs dont la version est au moins v2.13.9 (sortie avec la version R2025-01) : à partir de cette version, le moteur distant adopte un mode de sélection de JVM dynamique. Ce mode adapte automatiquement le moteur à la bonne version de Java pour exécuter les Jobs ou les microservices. Pour plus d'informations, consultez Mode adaptatif : Configurer le moteur distant (Remote Engine) pour sélectionner dynamiquement une version de Java.
- Si votre moteur est en version v2.13 ou supérieure mais antérieure à la v2.13.9 et que vous ne pouvez mettre à niveau vers la version la plus récente, suivez cette procédure afin de spécifier la version de Java à utiliser pour les exécutions. Cette approche n'est pas dynamique et seule une version peut être spécifiée. Pour plus d'informations, consultez Spécifier une version de Java pour exécuter des Jobs ou des microservices.
Mode adaptatif : Configurer le moteur distant (Remote Engine) pour sélectionner dynamiquement une version de Java
Dans ce mode, le moteur distant sélectionne automatiquement l'instance Java appropriée, basée sur le niveau de compatibilité de Java et de l'artefact à exécuter (Jobs ou microservices).
Ce mode dynamique de sélection de versions de Java (adaptif) vous permet d'exécuter des artefacts à partir de différentes versions du Studio sans avoir à les construire à nouveau.
- Pour plus d'informations concernant la définition de ce niveau, consultez Configuration du niveau de conformité du compilateur.
- Pour plus d'informations concernant les versions de Java compatibles et leurs évolutions avec les versions du Studio, consultez Environnements Java compatibles.
Procédure
Cas d'utilisation typiques pour le mode adaptatif du moteur
- Jobs construits pour s'exécuter sur Java 8 :
Ces Jobs sont compilés avec le niveau de conformité de Java 8 et ne comprennent pas --add-opens (la case Enable Java 17 compatibility (Activer la compatibilité avec Java 17) n'est pas cochée). Ils sont généralement compatibles avec Java 11. Configurer Java 8 et 11 ou configurer Java 11 uniquement leur assure une exécution correcte.
Note InformationsConseil : Java 8 ne supporte pas --add-opens. - Jobs Standard (intégration de données) construits pour s'exécuter sur Java 11 :
Ces Jobs sont compilés avec le niveau de conformité de Java 8 et comprennent --add-opens où nécessaire (la case Enable Java 17 compatibility (Activer la compatibilité avec Java 17) est cochée).
Ils sont généralement compatibles avec Java 11. Il est possible de les exécuter sur Java 17 mais cela peut provoquer des erreurs, car --add-opens peut ne pas avoir les modules nécessaires pour que Java 17 fonctionne correctement.
Configurez Java 11 en mode adaptif pour lui permettre de gérer ces Jobs.
- Jobs construits pour s'exécuter sur Java 17 :
Ces Jobs sont compilés avec le niveau de conformité de Java 17. Ils s'exécutent sur l'instance de Java 17 configurée en mode adaptatif, ou, si non configurée, sur l'instance de Java par défaut du moteur.
Spécifier une version de Java pour exécuter des Jobs ou des microservices
Configurez votre moteur distant pour qu'il exécute des Jobs ou des microservices à l'aide d'une version spécifique de Java. Si vous avez activé le mode adaptatif présenté ci-dessus, ignorez cette section.
Cette section fournit une alternative au mode adaptatif, si ce dernier n'est pas disponible dans la version de votre moteur. Cette alternative vous permet d'exécuter les artefacts conçus avec des versions de Java antérieures à Java 17.
Lorsque vous construisez des Jobs ou des microservices, pensez à les construire avec l'option add-opens, afin d'assurer la compatibilité avec Java 17. Cette option ouvre les packages nécessaires à la compatibilité avec Java 17, rendant vos Jobs ou microservices exécutables directement sur la nouvelle version du moteur distant (Remote Engine), sans avoir à passer par la procédure présentée dans cette section pour définir une version spécifique de Java. Pour plus d'informations concernant l'utilisation de cette option add-opens et ses limitations, consultez Configurer Java dans le Studio Talend.
Procédure
- Arrêtez le moteur.
-
En fonction de l'emplacement d'installation du moteur en tant que service système Linux, procédez comme suit :
- Si le moteur n'a pas été installé en tant que service système Linux :
- Parcourez votre système jusqu'au fichier <RemoteEngineInstallationDirectory>/bin/setenv.
- Ajoutez la ligne suivante : export PATH="<path-to-jvm-bin-directory>:${PATH}".
Ce chemin path-to-jvm-bin-directory est le chemin d'accès au dossier bin de l'instance JVM à utiliser pour exécuter des Jobs ou des microservices. Cette ligne ajoute ce chemin d'accès à la variable d'environnement PATH.
- Si le moteur a été installé en tant que service système Linux :
- Naviguez jusqu'au fichier <RemoteEngineInstallationDirectory>/etc/talend-remote-engine-wrapper.conf.
- Ajoutez la ligne suivante à la section Wrapper Properties ou modifiez le chemin si cette ligne existe déjà :
set.PATH=<desired-java-home-path>:%PATH_WITH_JAVA%
Ce chemin desired-java-home-path est le chemin d'accès au dossier bin de l'instance Java à utiliser. Ce chemin doit être ajouté juste après set.PATH=. Conservez %PATH_WITH_JAVA% sans modification.
- Si le moteur n'a pas été installé en tant que service système Linux :
- Redémarrez le moteur.
Afficher les versions de Java utilisées par un moteur distant pour exécuter les tâches
Before you begin
Procedure
- Ouvrez l'onglet Engines (Moteurs) de la page Processing (Traitement).
- Cliquez sur le nom du moteur pour afficher son panneau de détails.
- Cliquez sur l'onglet Configuration.
Results
