Java AvroStorage()在清管器中的使用

Java AvroStorage()在清管器中的使用,java,apache-pig,avro,Java,Apache Pig,Avro,我正在尝试用Java构建我的第一个Pig UDF,但在使用Eclipse构建时调用该函数时遇到了问题 我的代码如下所示: REGISTER /home/user2/deb/demo.jar; REGISTER/home/user2/deb/deb/avro-1.4.0.jar REGISTER/home/user2/deb/deb/json-simple-1.1.jar REGISTER/home/user2/deb/deb/piggybank.jar REGISTER/home/user2/

我正在尝试用Java构建我的第一个Pig UDF,但在使用Eclipse构建时调用该函数时遇到了问题 我的代码如下所示:

REGISTER /home/user2/deb/demo.jar;
REGISTER/home/user2/deb/deb/avro-1.4.0.jar REGISTER/home/user2/deb/deb/json-simple-1.1.jar REGISTER/home/user2/deb/deb/piggybank.jar REGISTER/home/user2/deb/jackson-core-asl-1.5.5.jar REGISTER/home/user2/deb//jackson-mapper-asl-1.5.5.jar

avro = LOAD '/user/user2/deb/part-r-00000.avro' USING AvroStorage('schema_check') AS (accntNo: chararray);
C=FOREACH avro生成掩码。AccountMaskaccntNo; 转储C


我认为您需要包括avro运行时jar:avro-1.5.3.jar。您可能正在运行与1.5.3不同的avro版本,因此请检查以确保您在其中输入了正确的版本号


register/some/path/avro-1.5.3.jar

尝试使用AvroStorage的完全限定名:

avro = LOAD '/user/user2/deb/part-r-00000.avro' 
       USING org.apache.pig.piggybank.storage.avro.AvroStorage('schema_check') 
       AS (accntNo: chararray);

错误2997:无法从备份中重新创建异常错误:错误:找到类org.apache.hadoop.mapreduce.TaskAttemptContext,但需要接口org.apache.pig.backend.executionengine.execute:错误2997:无法从备份中重新创建异常错误:错误:找到类org.apache.hadoop.mapreduce.TaskAttemptContext,但接口是预期的以前我使用了错误的piggybank.jar,现在问题已经解决了不确定还有什么问题,如果有的话?是的,它现在显示以下异常ExecException:错误2997:无法从备份错误中重新创建异常错误:错误:找到类org.apache.hadoop.mapreduce.TaskAttemptContext,但是界面是预期的。有人能给我下载piggybank-0.9.0或0.10.0 jars的链接吗?请尽快帮助我
avro = LOAD '/user/user2/deb/part-r-00000.avro' 
       USING org.apache.pig.piggybank.storage.avro.AvroStorage('schema_check') 
       AS (accntNo: chararray);