我正在尝试使用示例
运行我的第一个UDFhttp://wiki.apache.org/pig/UDFManual。现在我有了FirstUdf.jar myscript。在同一个文件夹
我myscript。猪的情况如下
REGISTER FirstUdf.jar; A = LOAD '/home/vishal/exampleforPIG1' AS
(exchange: chararray, symbol: chararray, date: int,value:float);
B =FOREACH A GENERATE myudfs.UPPER(symbol);
转储B;
现在,当我给出以下命令来运行我的脚本时,它给了我以下错误
命令——
java -cp FirstUdf.jar home/vishal/FirstUdf.jar -x local myscript.pig
跟踪误差,
ERROR 1000:解析时出错。遇到"java"在第1行,第1列
我给的命令是错误的还是什么问题
您可以尝试以下操作:
硬编码自定义UDF的路径:
REGISTER '/path/to/FirstUdf.jar';
DEFINE myUDF com.example.MyUDF();
...
Then:
pig -f myscript.pig -x local
…或者将其作为命令行参数传递:
REGISTER '$UDF_PATH/FirstUdf.jar';
DEFINE myUDF com.example.MyUDF();
...
Then:
pig -f myscript.pig -param UDF_PATH=/path/to -x local