Accéder au contenu principal Passer au contenu complémentaire

Échec du build lors du déploiement vers Talend Cloud sur Java 17 - Solution de contournement

Lorsque vous exécutez des commandes Maven d'intégration continue, pour publier des artefacts dans Talend Cloud après votre passage à Java 17, il est possible que vous rencontriez ce type d'erreur de build :

Unable to make field private static volatile java.net.Authenticator 
java.net.Authenticator.theAuthenticator accessible: module java.base 
does not "opens java.net" to unnamed module XX

Pour résoudre ce problème, vous devez ajouter des modifications au fichier de configuration du démarrage de Maven.

Solution de contournement pour les personnes sous Windows

Ajoutez cette ligne au fichier <Maven_home>/bin/mvn.cmd :
set "MAVEN_OPTS=%MAVEN_OPTS% --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/sun.security.x509=ALL-UNNAMED --add-opens=java.base/sun.security.pkcs=ALL-UNNAMED"

Sauvegardez vos modifications et redémarrez le build.

Solution de contournement pour les personnes sous Linux

Ajoutez cette ligne au fichier <Maven_home>\bin\mvn :
export MAVEN_OPTS="$MAVEN_OPTS \
--add-opens=java.base/java.net=ALL-UNNAMED \
--add-opens=java.base/sun.security.x509=ALL-UNNAMED \
--add-opens=java.base/sun.security.pkcs=ALL-UNNAMED"

Sauvegardez vos modifications et redémarrez le build.

Solution de contournement pour Jenkins

Si vous utilisez Java 17 avec un serveur Jenkins, modifiez la partie TALEND_CI_RUN_CONFIG du fichier XML dans l'archive jenkins_pipeline_simple.zip pour ajouter ces paramètres.

Sauvegardez vos modifications et redémarrez le build.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !