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

Announcements
Join us in NYC Sept 4th for Qlik's AI Reality Tour! Register Now
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

java.lang.ClassFormatError: oracle.jdbc.OracleDriver Error

Hello,
I get the following error when I try to run my Talend job from command line in Linux.
Exception in thread "main" java.lang.Error: java.lang.ClassFormatError: oracle.jdbc.OracleDriver (unrecognized class file version)
at scms_dwh.pscm_etl_0_1.PSCM_ETL.tOracleSP_1Process(PSCM_ETL.java:447)
at scms_dwh.pscm_etl_0_1.PSCM_ETL.runJobInTOS(PSCM_ETL.java:994)
at scms_dwh.pscm_etl_0_1.PSCM_ETL.main(PSCM_ETL.java:839)
Caused by: java.lang.ClassFormatError: oracle.jdbc.OracleDriver (unrecognized class file version)
at java.lang.VMClassLoader.defineClass(libgcj.so.7rh)
at java.lang.ClassLoader.defineClass(libgcj.so.7rh)
at java.security.SecureClassLoader.defineClass(libgcj.so.7rh)
at java.net.URLClassLoader.findClass(libgcj.so.7rh)
at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
at java.lang.Class.forName(libgcj.so.7rh)
at scms_dwh.pscm_etl_0_1.PSCM_ETL.tOracleSP_1Process(PSCM_ETL.java:368)
...2 more
While searching on this I found that this may be caused due to $PATH and $JAVA_PATH variables. So I have now set them again to point to my jdk.
Also, can this be an issue because of the jdk version installed on my system? Current jdk being used is 1.4.2.
Thanks and Regards,
Shikha
Labels (4)
6 Replies
Anonymous
Not applicable
Author

Hi
Yes, the JRE used to execute the job is different from the one compiled the job. Talend requires Sun JDK 1.6 or higher. To resolve this issue, upgrade your JDK.
Anonymous
Not applicable
Author

Shong, thank you so much for your prompt reply.
So basically when we install Talend, it comes with an integrated JDK, and hence, there is no issue while running the job from the GUI. But when I try to run it from the command line it hits the JDK installed in OS and errors out. Am I correct?
Anonymous
Not applicable
Author

Shong, thank you so much for your prompt reply.
So basically when we install Talend, it comes with an integrated JDK, and hence, there is no issue while running the job from the GUI. But when I try to run it from the command line it hits the JDK installed in OS and errors out. Am I correct?

Hi
Yes, both of the two machines used to develop Talend jobs and execute Talend jobs should have Sun JDK1.6 or higher installation.
The job could run fine with the integrated JDK such as OpenSource JDK in Linux distributions, but it is not verified by Talend, we suggest to install Sun JDK.
Anonymous
Not applicable
Author

Shong, thank you so much for your prompt reply.
So basically when we install Talend, it comes with an integrated JDK, and hence, there is no issue while running the job from the GUI. But when I try to run it from the command line it hits the JDK installed in OS and errors out. Am I correct?

No that is not correct. Talend Studio does not comes with an integrated JDK. Studio always use whats already installed.
The only thing is, Eclipse (the foundation of Talend Studio) have it own compiler. You can see what will be used in the Preferences ->Java->Installed JRE.
Anonymous
Not applicable
Author

Hi,
Even after upgrading my JDK to 1.6, I'm getting the same error 0683p000009MPcz.png
Kindly suggest some other solution.
Do I need to check for the settings of some environment variable??
Anonymous
Not applicable
Author

Thanks jlolling!
The jdk which IDE was using (Preferences ->Java->Installed JRE) was different of my jdk javaHome.