Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Connect 2026! Turn data into bold moves, April 13 -15: Learn More!
cancel
Showing results for 
Search instead for 
Did you mean: 
_AnonymousUser
Specialist III
Specialist III

Broken classpath link within generated DI-Job shell script

Aim: Running a DI-Job on a Talend Runtime Server (Talend MDM Platform 6.1.1, Ubuntu Server, called Execution Server)

Approache: 

1. Creating an job in Talend Studio (Talend MDM Platform 6.1.1.20151214_1327, Windows 7), that imports an CSV file into a MySQL 5.7 database.
2. Job runs in studio local and remote on the Execution Server, based on defined context groups, successfully.
3. Creating an Execution Task within TAC (Talend MDM Platform 6.1.1, Sun Solaris 10) Job Conductor.
3.a Loading the job and context from SVN into the Execution Task.
3.b Connecting the Execution Task with the Execution Server.
4. Generation of job on TAC Server successfully.
5. Deployment of the job from TAC Server to Execution Server runs fine.
6. Running the job on the Execution Server generates the following error message (Case 1😞
        ...
        java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
        ...

Analysis:
A. Importing the job within step 3a from an exported job-zipfile (Talend Studio function 'Build Job') and running the job after deployment is working fine (Case 2).

B. Generated classpath link within job shell script:
Case 1:
#!/bin/sh
cd `dirname $0`
ROOT_PATH=`pwd`
/export/home/jdk1.8.0_73/bin/java -Xms256M -Xmx1024M -cp:
...
/export/home/Talend-Runtime-V6.1.1/./TalendJobServersFiles/repository/<generated_job_name>/<job_name>/../lib/mysql-connector-java-5.1.30-bin.jar
...
--pid=<pid> --client_host=<host> --log4jLevel=Trace

Case 2:
#!/bin/sh
cd `dirname $0`
ROOT_PATH=`pwd`
/export/home/jdk1.8.0_73/bin/java -Xms256M -Xmx1024M -cp:
...
/export/home/Talend-Runtime-V6.1.1/./TalendJobServersFiles/repository/<generated_job_name>/<job_name>/../../../cache/lib/<generated_number_4_mysql.jar>/mysql-connector-java-5.1.30-bin.jar
...
--pid=<pid> --client_host=<host> --log4jLevel=Trace

C. Generated stuff:
Case 1: 
Directory "/export/home/Talend-Runtime-V6.1.1/TalendJobServersFiles/repository/<generated_job_name>/lib/" is missing.

Other referenced JAR files within the shell scripts for both cases are generated properly.
For example: "talendcsv.jar" has been properly generated in directory "/export/home/Talend-Runtime-V6.1.1/TalendJobServersFiles/cache/lib/<generated_number_4_talendcsvjar>/talendcsv.jar".

Case 2: 
File "mysql-connector-java-5.1.30-bin.jar" is stored within the generated directory "/export/home/Talend-Runtime-V6.1.1/TalendJobServersFiles/cache/lib/<generated_number_4_mysql.jar>/".

----------------------------------
Legend:
<>: Placeholder for the values, I don't want to show here 😉
...: some content
----------------------------------

Any ideas to correct that behavior?

Labels (2)
1 Reply
_AnonymousUser
Specialist III
Specialist III
Author

Correction:
Execution Server: Talend MDM Platform 6.1.1, Sun Solaris 10
TAC: Talend MDM Platform 6.1.1, Ubuntu Server