在简单加载时异常



我刚开始学习pig并尝试用它做一些事情,所以我进入pig控制台并简单地键入a = load 'sample_data.csv';(我有一个名为sample_data.csv的文件)。我收到以下异常:

Pig Stack Trace
---------------
ERROR 2998: Unhandled internal error. name
java.lang.NoSuchFieldError: name
    at org.apache.pig.parser.QueryParserStringStream.<init>(QueryParserStringStream.java:32)
    at org.apache.pig.parser.QueryParserDriver.tokenize(QueryParserDriver.java:207)
    at org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:175)
    at org.apache.pig.PigServer$Graph.validateQuery(PigServer.java:1571)
    at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1544)
    at org.apache.pig.PigServer.registerQuery(PigServer.java:516)
    at org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:991)
    at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:412)
    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:194)
    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:170)
    at org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69)
    at org.apache.pig.Main.run(Main.java:538)
    at org.apache.pig.Main.main(Main.java:157)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
================================================================================

sample_data.csv的含量为:

1, John, Smith
2, Jane, Doe
3, George, Washington
4, Ben, Franklin

我还将$PIG_HOME变量设置为pig目录的主文件夹。

我也知道以前有人提出过类似的问题。

然而,即使我按照指示设置了$PIG_CLASSPATH变量,并且echo修改了$PIG_CLASSPATH以确保它被正确设置,我仍然得到相同的错误。

挠了24小时头。在同事的帮助下,我终于弄明白了。

这是因为Hive。由于某些原因,当在同一台机器上设置PigHive时,往往会发生这种情况。所以我只需要输入

export HIVE_HOME=

最新更新