Pig 无法解析 CassandraStorage 的类版本

Posted

技术标签:

【中文标题】Pig 无法解析 CassandraStorage 的类版本【英文标题】:Pig can't resolve class version for CassandraStorage 【发布时间】:2013-11-18 01:26:10 【问题描述】:

将Cassandra的lib目录添加到PIG_CLASSPATH后,我尝试引用org.apache.cassandra.hadoop.pig.CassandraStorage。但是,我收到以下关于类版本号的错误:

解析失败:Pig 脚本解析失败: pig 脚本无法验证:org.apache.pig.backend.executionengine.ExecException:错误 1069:解析类 org.apache.cassandra.hadoop.pig.CassandraStorage 的类版本号时出现问题 在 org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:191) 在 org.apache.pig.PigServer$Graph.validateQuery(PigServer.java:1571) 在 org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1544) 在 org.apache.pig.PigServer.registerQuery(PigServer.java:516) 在 org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:991) 在 org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:412) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:194) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:170) 在 org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69) 在 org.apache.pig.Main.run(Main.java:538) 在 org.apache.pig.Main.main(Main.java:157) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:616) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:160)

任何建议将不胜感激,

迈克

【问题讨论】:

【参考方案1】:

我能够通过降级到为 Java 6 构建的 Cassandra 1.2.1 进行修复。

【讨论】:

以上是关于Pig 无法解析 CassandraStorage 的类版本的主要内容,如果未能解决你的问题,请参考以下文章

Pig 错误:无法解析查询

解析 PIG-XML 时出错

带有datafu的apache PIG:无法解析UDF

无法使用导入解析 org.apache.hcatalog.pig.hcatloader

无法从 Pig 解析 Java UDF 中的方法

无法使用 Pig 中的 Elephant Bird 访问带有包和元组的嵌套 JSON