【问题标题】:Import Error in Hadoop Mapreduce in EclipseEclipse 中 Hadoop Mapreduce 中的导入错误
【发布时间】:2014-04-07 14:27:43
【问题描述】:

我试图在 Eclipse 中编译一些 Hadoop 2.3.0 mapreduce 作业。我导入了以下罐子

hadoop-mapreduce-client-core-2.3.0.jar
commons-cli-1.2.jar
hadoop-common-2.3.0.jar

但是,每当我导入 org.apache.hadoop.mapreduce.Mapper 时,我都会收到以下错误

 The class file Mapper<KEYIN,VALUEIN,KEYOUT,VALUEOUT> contains a signature '(Lorg/apache/hadoop/mapreduce/
     Mapper<TKEYIN;TVALUEIN;TKEYOUT;TVALUEOUT;>.Context;)V' ill-formed at position 74

我在网上找不到这样的错误,所以我想知道它可能是什么。

【问题讨论】:

  • 看起来您的代码中可能有错字。什么是 Lorg/apache/hadoop/mapreduce?
  • 是的,但该代码不是我的,它来自发行版。
  • 发布第 60 - 80 行的代码
  • 我查看了我的 eclpise 配置并记得必须将 maven 和其他几个罐子带入 eclipse。你看过这个 Cloudera 博客吗blog.cloudera.com/blog/2013/05/…
  • 我想我找到了解决办法,出现了加载 JRE 5 的选项,当我这样做时,所有错误都消失了,很奇怪。

标签: java eclipse hadoop jar mapreduce


【解决方案1】:

遇到同样的问题。我的项目最初是为了使用 JRE1.5 合规性而创建的。在类路径中使用适当的 JDK 切换到 1.8 并进行干净的构建解决了这个问题。

【讨论】:

  • 如何修复将 JDK 切换到 1.8 并构建?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多