对于hdfs,mapreduce的编译同样适用
1. Hdfs和mapreduce模块编译
在编译hdfs和mapreduce的时候,由于对common有依赖关系。需要去网站下载相关包。不过在默认的配置中,是找不到该包的,会报模块找不到错误。
需要对hdfs,mapreduce的ivy目录中的libraries/properties文件进行修改
修改以下两项的值,如下图所示。
然后其他的操作和common编译一样,即可完成编译过程,编译后的build文件夹如下:
1. 验证编译结果
a. Sh ${Hadoop_HOME}/bin/stop-all.sh停掉hadoop集群。然后删除${HADOOP_HOME}下三个工程相关的包。
b. 把编译成功的hadoop-common-0.21.1-SNAPSHOT.jar,hadoop-hdfs-0.21.1-SNAPSHOT.jar和 hadoop-mapred-0.21.1-SNAPSHOT.jar三个jar包拷贝到hadoop集群${HADOOP_HOME}目录下。
c. Sh ${HADOOP_HOME}/bin/start-all.s重启hadoop集群。
d. 查看集群的各项功能,是否正确,正确则证明编译成功。