我在 Windows 上使用 Hadoop 的 HDInsight 安装,并尝试将参数传递给猪脚本。我在不同的机器上使用了几个脚本,所以我认为这可能是 Windows 的事情。我已经输入了默认值来检查脚本中的参数是否有效
示例脚本:
%default myParam 'foo'
load('$myParam');
从命令行以空运行方式运行以进行测试: pig -r testSub.pig
结果是:
load('foo');
但试图从命令行提供值:
pig -p myParam=bar -r testSub.pig
抛出错误:
2013-04-23 13:37:27,531 [main] ERROR org.apache.pig.Main - ERROR 2999: Unexpected internal error. Encountered unexpected arguments on command line - please check the command line.
Details at logfile: C:\Hadoop\hadoop-1.1.0-SNAPSHOT\logs\pig_1366720647495.log
和日志文件说的一样:
Error before Pig is launched
----------------------------
ERROR 2999: Unexpected internal error. Encountered unexpected arguments on command line - please check the command line.
java.lang.RuntimeException: Encountered unexpected arguments on command line - please check the command line.
at org.apache.pig.Main.run(Main.java:500)
at org.apache.pig.Main.main(Main.java:111)
================================================================================
我试过使用“-param”,把东西放在单引号和双引号中,移动顺序,但没有运气。任何想法接下来要尝试什么 - 我需要在 Windows 命令提示符下添加一些奇怪的转义吗?