大家好,我是新来的Pig,我正在尝试以下Pig脚本:
然后显示以下错误:error 1000:解析期间出错。无法在日志文件:/home/training/pig\ 1371303109105.log中示例化参数为“null”的“uper”
我的Pig剧本:
register udf.jar;
A = LOAD 'data1.txt' USING PigStorage(',') AS (name:chararray, class:chararray, age:int);
B = foreach A generate UPER(class);
我遵循这个教程。
我的java类是:
enter code here
import org.apache.pig.EvalFunc;
import org.apache.pig.data.Tuple;
import java.io.*;
public class UPER extends EvalFunc<String>{
@Override
public String exec(Tuple input) throws IOException {
// TODO Auto-generated method stub
if(input == null ||input.size() ==0)
return null;
try
{
String str=(String)input.get(0);
return str.toUpperCase();
}
catch(Exception e){
throw new IOException("Caught exception processing input row ", e);
}}
}
1条答案
按热度按时间kcwpcxri1#
我从您的错误日志中找到以下信息:
我猜是的
org.apache.commons.logging.Log
不在你的环境中。你的Pig剧本是怎么写的?这个班应该在Pig的环境里。org.apache.commons.logging.Log
在commons-logging-*.*.*.jar