Skip to main content
Announcements
SYSTEM MAINTENANCE: Thurs., Sept. 19, 1 AM ET, Platform will be unavailable for approx. 60 minutes.
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.