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

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

TOS_BD 6.4.1 > java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils

Hello,

when i start my job in TOS_BD 6.4.1 (windows box, java 1.8), i have this error :

2018/02/21 11:04:14 [PS_ASSET] : DEBUT FULL_EXPORT_TABLE_SQOOP
[WARN ]: org.apache.sqoop.ConnFactory - $SQOOP_CONF_DIR has not been set in the environment. Cannot check for additional configuration.
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils

 

All the additionnal package have been downloaded.

 

the same job start correctly  in TOS_BD 6.1.1.

 

how can i solve this ?

 

Laurent

Labels (3)
1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

ok.

think that in TOS_BD major than 6.1 wu must use tlibraryLoad with tsqoopimport.

View solution in original post

6 Replies
manodwhb
Champion II
Champion II

in which component you got the error?

Anonymous
Not applicable
Author

the error occurs at the start of the job which is a sqoopimport from oracle job.

the complete error stack :

 

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils
    at org.apache.sqoop.manager.oracle.OracleUtils.escapeIdentifier(OracleUtils.java:36)
    at org.apache.sqoop.manager.oracle.OraOopOracleQueries.getTableColumns(OraOopOracleQueries.java:683)
    at org.apache.sqoop.manager.oracle.OraOopOracleQueries.getTableColumns(OraOopOracleQueries.java:767)
    at org.apache.sqoop.manager.oracle.OraOopOracleQueries.getTableColumnNames(OraOopOracleQueries.java:624)
    at org.apache.sqoop.manager.oracle.OraOopConnManager.getColumnNamesInOracleTable(OraOopConnManager.java:124)
    at org.apache.sqoop.manager.oracle.OraOopConnManager.getSelectedColumnNamesInOracleTable(OraOopConnManager.java:144)
    at org.apache.sqoop.manager.oracle.OraOopConnManager.getColTypesQuery(OraOopConnManager.java:216)
    at org.apache.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:245)
    at org.apache.sqoop.manager.oracle.OraOopConnManager.getColumnTypes(OraOopConnManager.java:504)
    at org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:328)
[statistics] disconnected
    at org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1853)
    at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1653)
    at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:107)
    at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:488)
    at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:615)
    at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
    at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
    at local_project.j02_full_export_table_to_sqoop_0_4.J02_FULL_Export_Table_to_Sqoop.tSqoopImport_1Process(J02_FULL_Export_Table_to_Sqoop.java:1498)
    at local_project.j02_full_export_table_to_sqoop_0_4.J02_FULL_Export_Table_to_Sqoop.runJobInTOS(J02_FULL_Export_Table_to_Sqoop.java:4046)
    at local_project.j02_full_export_table_to_sqoop_0_4.J02_FULL_Export_Table_to_Sqoop.main(J02_FULL_Export_Table_to_Sqoop.java:3568)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang3.StringUtils
    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)
    ... 21 more

Anonymous
Not applicable
Author

In tSqoopImport.

manodwhb
Champion II
Champion II

you need to confugure $SQOOP_CONF_DIR in your Hadoop environment.

Anonymous
Not applicable
Author

ok.

think that in TOS_BD major than 6.1 wu must use tlibraryLoad with tsqoopimport.