[ 
https://issues.apache.org/jira/browse/HBASE-9112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13728731#comment-13728731
 ] 

Nick Dimiduk commented on HBASE-9112:
-------------------------------------

Inclusion of dependency jars is done in part by inspecting the attributes of 
the job and including  jars that directly provide those classes. It sounds like 
nothing in your job used any class that is directly provided by hbase.jar, 
hence the failure. This is a bug.
                
> Custom TableInputFormat in initTableMapperJob throws ClassNoFoundException on 
> TableMapper
> -----------------------------------------------------------------------------------------
>
>                 Key: HBASE-9112
>                 URL: https://issues.apache.org/jira/browse/HBASE-9112
>             Project: HBase
>          Issue Type: Bug
>          Components: hadoop2, mapreduce
>    Affects Versions: 0.94.6.1
>         Environment: CDH-4.3.0-1.cdh4.3.0.p0.22
>            Reporter: Debanjan Bhattacharyya
>            Assignee: Nick Dimiduk
>
> When using custom TableInputFormat in TableMapReduceUtil.initTableMapperJob 
> in the following way
> TableMapReduceUtil.initTableMapperJob("mytable", 
>                                                       MyScan, 
>                                                       MyMapper.class,
>                                                       MyKey.class, 
>                                                       MyValue.class, 
>                                                       myJob,true,  
> MyTableInputFormat.class);
> I get error: java.lang.ClassNotFoundException: 
> org.apache.hadoop.hbase.mapreduce.TableMapper
>       at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>       at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>       at java.lang.ClassLoader.defineClass1(Native Method)
>       at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
>       at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
>       at 
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
>       at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
>       at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
>       at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
> If I do not use the last two parameters, there is no error.
> What is going wrong here?
> Thanks
> Regards

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to