You need to have your class file in this path /home/huyong/test/myudfs/UPPER.class
since it's in myudfs directory. On Jun 18, 2011, at 12:33 PM, 勇胡 <yongyong...@gmail.com> wrote: > I tried your command and then it shows me as following: > /home/huyong/test/UPPER.class > /home/huyong/test/UPPER.java > > Yong > 在 2011年6月18日 下午4:29,Dmitriy Ryaboy <dvrya...@gmail.com>写道: > >> This usually hapens when you aren't registering what you think you are >> registering. >> try `jar tf /home/huyong/test/myudfs.jar | grep UPPER` and see if you >> get anything. >> >> D >> >> 2011/6/18 勇胡 <yongyong...@gmail.com>: >>> Hi, >>> >>> package myudfs; >>> import java.io.IOException; >>> import org.apache.pig.EvalFunc; >>> import org.apache.pig.data.Tuple; >>> import org.apache.pig.impl.util.*; >>> >>> public class UPPER extends EvalFunc<String> >>> { >>> public String exec(Tuple input) throws IOException { >>> if (input == null || input.size() == 0) >>> return null; >>> try{ >>> String str = (String)input.get(0); >>> return str.toUpperCase(); >>> }catch(Exception e){ >>> throw new IOException(e); >>> } >>> } >>> } >>> >>> This is as same as the example from the Pig website. By the way, I also >>> added the PIG_CLASS. But it still didn't work. >>> >>> Yong >>> >>> 2011/6/18 Jonathan Coveney <jcove...@gmail.com> >>> >>>> Can you paste the content of the UDF? >>>> >>>> 2011/6/18 勇胡 <yongyong...@gmail.com> >>>> >>>>> Hello, >>>>> >>>>> I just tried the example from the pig udf manual step by step. But I >> got >>>>> the >>>>> error information. Can anyone tell me how to solve it? >>>>> >>>>> grunt> REGISTER /home/huyong/test/myudfs.jar; >>>>> grunt> A = LOAD '/home/huyong/test/student.txt' as (name:chararray); >>>>> grunt> B = FOREACH A GENERATE myudfs.UPPER(name); >>>>> 2011-06-18 11:15:38,892 [main] ERROR org.apache.pig.tools.grunt.Grunt >> - >>>>> ERROR 1070: Could not resolve myudfs.UPPER using imports: [, >>>>> org.apache.pig.builtin., org.apache.pig.impl.builtin.] >>>>> Details at logfile: /home/huyong/test/pig_1308388238352.log >>>>> >>>>> I have already registered the udf, why pig tries to search from the >>>> builtin >>>>> path. >>>>> >>>>> Thanks for your help! >>>>> >>>>> Yong Hu >>>>> >>>> >>> >>