猪宏不接受' sh'身体

时间:2015-04-06 14:02:49

标签: shell macros apache-pig

在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'”单独放在一条线上,那很好。如果我使用数据集制作更复杂的宏并返回值等,它可以正常工作。但是试图做什么就失败了。

1 个答案:

答案 0 :(得分:0)

来自Apache Pig文档:

  

Macros cannot contain Grunt shell commands.