我正在关注Apache给出的this hadoop mapreduce tutorial . 那里给出的Java代码使用这些Apache-hadoop类:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
但我无法理解从哪里下载这些 jar . 在互联网上搜索这些课程时,我发现它们可用here .
但是这些和Jars的正式/可靠的Apache存储库是什么?
如果 jar 与hadoop一起发货,请告诉我路径 .
编辑:其他问题没有给出明确的指示 . 我发现答案如下
下载Hadoop-core-1.2.1.jar,用于编译和执行MapReduce程序 . 访问以下链接http://mvnrepository.com/artifact/org.apache.hadoop/hadoop-core/1.2.1下载jar .
所以这看起来真实的存储库
6 回答
This tutorial提到:
所以here你可以找到不同版本的所有 jar
您正在使用的教程使用Hadoop 1.0 . 这意味着你拥有的 jar 和教程使用的 jar 是不同的 . 如果您使用的是Hadoop 2.X,请按照完全使用该版本的教程进行操作 . 您不需要从第三方下载jar,您只需要知道正确使用该特定hadoop版本的API .
使用NetBeans我创建了一个新的Maven项目 .
然后在项目文件下,打开pom.xml .
我在里面添加
在使用依赖项构建之后,我现在可以编写代码了 .
在当前版本2.7.1中,我在
Missing artifact org.apache.hadoop:hadoop-mapreduce:jar:2.7.1
遇到了绊脚石,但发现这个 jar 似乎被分成了各种较小的 jar .......为我工作(......不知道这是什么意思:https://repo1.maven.org/maven2/org/apache/hadoop/hadoop-mapreduce/2.7.1/)
如果你遇到这种类型的错误,那么只需在终端上输入命令:
export HADOOP_HOME = $(hadoop classath)
注意:您必须在./bashrc文件中检查您自己的hadoop配置名称 . 在hadoop安装时,我们在.bashrc文件中设置Hadoop和java路径 . 我们来这里查看in below we can see that next to export .
最好的方法是下载Hadoop(3.x.y)并包含以下来自
hadoop-3.x.y/share/hadoop/mapreduce
的 jar1. hadoop-common-3.x.y.jar 2. hadoop-mapreduce-client-core-3.x.y.jar
这对我有用!