Bonjour,
Je me permets de solliciter votre aide, dans l’espoir que quelqu’un pourra me dépanner.
Je vous explique tout en détail.
Tout a commencé par le fait que je souhaitais monter de version de Talend Open Studio for Data Integration. J’étais en version 6.4 sous Windows 7 32 bits et j’ai souhaité passer dans la dernière version (7.3.1) en 64 bits que j’ai installé sur un nouveau PC Windows 10 de développement.
Sur le nouveau PC,
- j’ai installé Java JRE 8.271 64 bits,
- mis à jour la variable JAVA_HOME,
- installé Talend Open Studio for Data Integration v.7.3.1 64 bits dans C :\Programmes,
- importé une archive de mon projet avec le dossier workspace qui est sur C:\Utilisateurs\moncompte\Documents.
Comme tout allait bien, pour tester que je pouvais vraiment bien utiliser cette nouvelle version, j’ai construit le job puis copié l’archive générée sur le serveur de production (qui est en Windows 7 32 bits) et je l’ai décompressée.
Par contre, au préalable sur ce serveur de production, j’ai installé la même version de java JRE 8.271 mais en 32 bits que celle sur mon nouveau PC, et j’y ai aussi créé la variable JAVA_HOME. De plus, j’ai modifié la variable PATH du serveur puisqu’y était référencé l’ancien chemin de JAVA (Celui avec l’ancienne version).
J’ai déclenché le batch, tout s’est bien déroulé, il a fonctionné.
J‘aurai dû être content, mais comme je suis un peu « tatillon », j’ai voulu aller plus loin, notamment en créant une partition de disque dur D:\ sur le nouveau PC de développement et en y déplaçant le dossier Documents.
Ensuite, j’ai créé un dossier D:\Documents\Talend_WorkSpace (j’ai fait attention de ne pas mettre d’espace dans le chemin par sécurité) et avec Talend, j’y ai réimporté le même projet que la première fois, construit mon job et basculé l’archive sur le serveur de production, décompressé et déclencher le Batch.
Et là, patatra, quand je déclenche l’exécution, j’obtiens le message :
J’ai désinstaller Talend, retiré dans la base de registres toutes les entrées avec le mot « talend » et recommencé l’installation, l’import, la construction, la copie sur le serveur et l’exécution. Hélas même résultat.Erreur : Impossible de trouver ou charger la classe principale nom_projet.nom_job_2_0.NOM_JOB
Pourtant la construction du job n’indique pas d’erreur, mais j'en ai obligatoirement commis une quelque part, mais où
Ça ne me semble pas être un problème que le PC de développement soit en 64 bits et le serveur en 32 puisque ça a fonctionnait la première fois.
J’ai cherché toute la journée sur le web, dans les forums, et n’ai rien trouvé qui puisse me guider pour corriger ou que je puisse comprendre pour corriger (TOS DI, je me débrouille plutôt bien pour l’utiliser, mais java, je ne maitrise pas du tout).
Dans ce que je trouve sur ce forum, il semblerait que c’est un problème de chemin d’accès incorrect dans le fichier Batch généré par Talend et que je déclenche via une console DOS. Mais je n’arrive pas à comprendre ce qui est expliqué.
Pour être complet dans mes explications :
L’archive du projet Talend est décompressée sur le serveur dans le dossier C:\Programmes\mon_projet.
Dans la console DOS, je me place dans le dossier C:\Programmes\nom_projet\NOM_JOB et j’y déclenche le Batch qui s’y trouve et que Talend a généré, à savoir NOM_JOB_run.bat
Voici le code de ce Batch :
Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 %~d0 cd %~dp0 java -Dtalend.component.manager.m2.repository="%cd%/../lib" -Xms256M -Xmx512M -cp .;../lib/routines.jar;../lib/log4j-slf4j-impl-2.12.1.jar;../lib/log4j-api-2.12.1.jar;../lib/log4j-core-2.12.1.jar;../lib/log4j-1.2-api-2.12.1.jar;../lib/activation.jar;../lib/commons-collections-3.2.2.jar;../lib/jtds-1.3.1-patch-20190523.jar;../lib/mail-1.4.jar;../lib/jboss-serialization.jar;../lib/advancedPersistentLookupLib-1.2.jar;../lib/slf4j-api-1.7.25.jar;../lib/dom4j-2.1.1.jar;../lib/jakarta-oro-2.0.8.jar;../lib/talend_DB_mssqlUtil-1.4.jar;../lib/postgresql-8.4-703.jdbc4.jar;../lib/trove.jar;../lib/talendcsv.jar;../lib/crypto-utils.jar;../lib/talend_file_enhanced_20070724.jar;mon_job_2_0.jar; nom_projet.nom_job_2_0.NOM_JOB --context=Production %*
J’ai pris le temps de bien vous expliquer ce que j’ai entrepris. C’est un peu long, mais ça me semblait nécessaire.
J’espère de tout cœur que vous pourrez m’indiquer une solution.
D’avance Merci pour votre aide.
Cordialement,
Gidu
Partager