Ich versuche, ein Pig-Skript zu schreiben, das meine UDF verwendet. Wenn ich es ausführe, stoße ich auf "Guice-Erstellungsfehler" wie "java.lang.NoSuchMethodError". Klar, meine Hadoop-Umgebung verwendet eine andere Version von Guice als ich verwende. Ich habe versucht, mehrere Möglichkeiten meine Jar vor Putting, wie zum Beispiel:Apache Pig: Guice Erstellungsfehler. java.lang.NoSuchMethodError
- REGISTER my.jar
- es vor ‚PIG_CLASSPATH‘ Add ‚HADOOP_CLASSPATH‘, ‚CLASSPATH‘.
- Versuchte: export HADOOP_USER_CLASSPATH_FIRST = true
- -Dmapreduce.job.user.classpath.first = true
Nichts davon hat funktioniert! Version # von Hadoop: Hadoop 2.6.0-cdh5.4.5
Hier ist mein einfaches Skript:
REGISTER my.jar;
A = LOAD '/tmp/mydir/' AS (line:chararray);
B = FOREACH A generate com.mypackage.udf.MyUdf(line);
dump B;
Hat nicht funktioniert. Was entspricht -libjars in Pig? – DilTeam