【问题标题】:getting error when executing Cassandra WordCount on Hadoop: java.lang.NoSuchMethodError: org.apache.thrift.meta_data.FieldValueMetaData.<init>(BZ)V在 Hadoop 上执行 Cassandra WordCount 时出错:java.lang.NoSuchMethodError: org.apache.thrift.meta_data.FieldValueMetaData.<init>(BZ)V
【发布时间】:2011-10-10 16:14:52
【问题描述】:

尝试从 cassandra 执行 WordCount 示例并出现错误:

线程“main”中的异常 java.lang.NoSuchMethodError: org.apache.thrift.meta_data.FieldValueMetaData.(BZ)V 在 org.apache.cassandra.thrift.SlicePredicate.(SlicePredicate.java:132) 在 WordCount.run(WordCount.java:199) 在 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) 在 WordCount.main(WordCount.java:74) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:186)

提前谢谢你!

【问题讨论】:

  • 您需要提供有关您的环境以及您尝试运行示例的方式的更多信息。
  • 好吧,我什么都试过了。我像这样运行它:hadoop jar WordCount.jar,在类路径中我有 cassandra 和 libthrift 库。尝试在类路径中切换位置,尝试使用较新的 0.7 和较旧的 0.5 libthrift,与 apache-cassandra...lib 相同。
  • 似乎 Hadoop 在其库中的某处有一些较旧的 libthrift,但如何弄清楚呢? : (
  • bin/word_count 用于设置类路径和环境,因此您无需手动进行...

标签: hadoop cassandra word-count


【解决方案1】:

编辑hadoop.sh,插入固定的classpath列表,尝试从classpath中取出不同的库,发现hue-plugins-1.2.0.jar对Thrift有干扰。

这解决了问题: sudo rm /usr/lib/hadoop-0.20/lib/hue-plugins-1.2.0.jar

【讨论】:

    猜你喜欢
    • 2015-08-23
    • 1970-01-01
    • 2014-09-08
    • 2011-01-26
    • 1970-01-01
    • 2015-02-09
    • 2016-06-14
    • 2019-10-17
    • 2013-06-27
    相关资源
    最近更新 更多