Hadoop 2中的hadoop jar文件存放在哪里?

24
我正在尝试使用Hadoop实现一个样例的单词计数程序。我已经下载并安装了Hadoop 2.0.0。我想要使用Eclipse来完成这个样例程序,因为我认为在我的真实项目中我只能使用Eclipse。
我找不到像hadoop-core.jar和其他必需的jar文件之类的与Hadoop相关的jar文件。我在所有2.0 Hadoop的文件夹中搜索,但找不到这些文件。这些相同的文件在1.0版本的Hadoop中可用,但在2.0版本中不可用。我想知道在哪里可以获得这些文件?
我找不到关于2.0版本的太多信息。
请帮忙。
8个回答

37
实际上,我在一开始也遇到了类似的问题。显然,版本2没有 hadoop-core.jar文件。你需要下载Hadoop Common MapReduce Client Core 这两个文件并同时使用它们。我相信这会解决你的问题。希望能对你有所帮助! 编辑: 我刚刚更新了链接,使人们可以从存储库中选择适当的版本,因为我们现在已经远远超过了最初的版本2。

1
依赖库怎么办?它会导致运行时错误:https://dev59.com/fHrZa4cB1Zd3GeqP4psc。 - Igor Ševo
1
@IgorSevo 我认为你可能需要添加一些依赖库,但问题并没有要求。此外,如果您使用 Gradle 进行依赖管理,它会自动包含相关的依赖库,这段代码可以与上述两个 jar 包完美地运行。 - aa8y
如下回复所述,它们将可在 ${HADOOP_HOME}/share/hadoop/common${HADOOP_HOME}/share/hadoop/mapreduce 中找到。 - Jagadish Talluri

12

将以下文件夹中的JAR文件包含进来对我很有用:

share\hadoop\common       
share\hadoop\common\lib   
share\hadoop\mapreduce    
share\hadoop\mapreduce\lib
share\hadoop\yarn         
share\hadoop\yarn\lib   

斜杠必须向前!! - nishant

6

hadoop-core-${HADOOP_VERSION}.jar is in

${HADOOP_HOME}/share/hadoop/common 

这里的目录是指与 ${HADOOP_HOME} 目录不同的目录。


${HADOOP_HOME}/share/hadoop/common - Jignesh Rawal
简洁明了的答案。已点赞。 - Jagadish Talluri

3

这对我在Mac上使用Hadoop 2.6.0有效:

hadoop/2.6.0/libexec/share/hadoop/common/hadoop-common-2.6.0.jar

或者在Hadoop目录中搜索“.jar”,您可以看到所有的.jar文件。


2

hadoop-core-{version}.jar 在Hadoop 2+版本中更名为hadoop-common-{version}.jar


1

0
在hadoop 2.7.2上,我必须将其设置为与HADOOP_COMMON_HOME相同。

-1
在下面的位置,您可以找到以您安装的发行版命名的文件夹,其中包含一个jar文件夹。 /opt/cloudera/parcels/[cloudera distribution]/jars/
例如:/opt/cloudera/parcels/CDH-5.4.10/jars

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接