【发布时间】:2016-04-07 18:14:12
【问题描述】:
我正在尝试编写一个使用我的 UDF 的 Pig 脚本。当我运行它时,我遇到了“Guice 创建错误”,例如“java.lang.NoSuchMethodError”。显然,我的 hadoop 环境使用的 Guice 版本与我使用的不同。我尝试了几种将我的罐子放在前面的方法,例如:
- 注册我的.jar
- 将其添加到前面“PIG_CLASSPATH”、“HADOOP_CLASSPATH”、“CLASSPATH”。
- 已尝试:导出 HADOOP_USER_CLASSPATH_FIRST=true
- -Dmapreduce.job.user.classpath.first=true
这些都不起作用! Hadoop 版本号:Hadoop 2.6.0-cdh5.4.5
这是我的简单脚本:
REGISTER my.jar;
A = LOAD '/tmp/mydir/' AS (line:chararray);
B = FOREACH A generate com.mypackage.udf.MyUdf(line);
dump B;
【问题讨论】:
标签: hadoop mapreduce apache-pig cloudera cloudera-cdh