在Pig中,这个简单的宏不起作用:
define simple ()
returns void {
sh echo 'Hello World'
};
simple();
它给出了这个错误:
2015-04-06 09:56:00,733 [main] ERROR org.apache.pig.Main - ERROR 1200: <line 10> Failed to parse macro 'simple'. Reason: <line 2, column 0> Syntax error, unexpected symbol at or near 'sh'
macro content:
sh echo 'Hello World'
为什么?如果我把“sh echo'Hello World'”单独放在一条线上,那很好。如果我使用数据集制作更复杂的宏并返回值等,它可以正常工作。但是试图做什么就失败了。