Zhengguo 'Mike' SUN wrote:
Hi, Peeyush,

I guess I didn't make myself clear. I am trying to run a Hadoop pipes job with 
a combination of Java classes and C++ classes. So the command I am using is 
like:

hadoop pipes -conf myconf.xml -inputformat MyInputFormat.class -input in 
-output out

And it threw ClassNotFoundException for my InputSplit class.
As I understand "hadoop jar" is used to run a jar file, which is not my case. And there 
is a -jar option in "hadoop pipes". But, unfortunately, it is not working for me. So the 
question I want to ask is how to include customized Java classes, such as MyInputSplit, in a pipes 
job?

You are right. -jar option also doesn't add the jar file to classpath on the client-side. You can use -libjars option with 0.19. Then, the command looks like

hadoop pipes -conf myconf.xml -libjars <jarfile> -inputformat 
MyInputFormat.class -input in -output out

I don't see a way to do this in 0.17.*, one way could be you add it explicitly to the classpath on client-side, and add it through the option -jar for the job.
Thanks,
Amareshwari
Thanks,
Mike




________________________________
From: Peeyush Bishnoi <[EMAIL PROTECTED]>
To: core-user@hadoop.apache.org; core-user@hadoop.apache.org
Sent: Wednesday, October 29, 2008 12:52:18 PM
Subject: RE: How do I include customized InputFormat, InputSplit and 
RecordReader in a C++ pipes job?

Hello Zhengguo ,

Yes , -libjars is the new feature in Hadoop. This feature has been available from Hadoop-0.17.x , but it is more stable from hadoop 0.18.x
example to use -libjars...

hadoop jar -libjars <comma seperated list of jars> ...


Thanks ,

---
Peeyush


-----Original Message-----
From: Zhengguo 'Mike' SUN [mailto:[EMAIL PROTECTED]
Sent: Wed 10/29/2008 9:22 AM
To: core-user@hadoop.apache.org
Subject: Re: How do I include customized InputFormat, InputSplit and 
RecordReader in a C++ pipes job?

Hi, Amareshwari,

Is -libjars a new option in Hadoop 0.19? I am using 0.17.2. The only option I 
see is -jar, which didn't work for me. And besides passing them as jar file, is 
there any other ways to do that?

Thanks
Mike


________________________________
From: Amareshwari Sriramadasu <[EMAIL PROTECTED]>
To: core-user@hadoop.apache.org
Sent: Tuesday, October 28, 2008 11:58:33 PM
Subject: Re: How do I include customized InputFormat, InputSplit and 
RecordReader in a C++ pipes job?

Hi,

How are you passing your classes to the pipes job? If you are passing them as a jar file, you can use -libjars option. From branch 0.19, the libjar files are added to the client classpath also.

Thanks
Amareshwari
Zhengguo 'Mike' SUN wrote:
Hi,

I implemented customized classes for InputFormat, InputSplit and RecordReader 
in Java and was trying to use them in a C++ pipes job. The customized 
InputFormat class could be included using the -inputformat option, but it threw 
ClassNotFoundException for my customized InputSplit class. It seemed the 
classpath has not been correctly set. Is there any way that let me include my 
customized classes in a pipes job?






Reply via email to