centos6.5环境下编译hadoop2.2.0的64位版本过程好多文章,在此不再阐述,仅对在编译过程中遇到的问题进行整理以作备忘
问题1:
Failed to execute goal org.apache.hadoop:hadoop-maven-plugins:2.2.0:protoc (compile-protoc) on project hadoop-common....
此问题产生原因是没有安装protocbuf ,
解决方案:
1)下载 protocbuf2.0.5.tar.gz 版本进行安装
2) tar zxvf protocbuf-2.0.5.tar.gz -C /usr/local
3) cd /usr/local/protocbuf-2.0.5
4)./configure
5) make
6)make install
问题2:
cannot access AbstractLifeCycle [ERROR] class file for org.mortbay.component.AbstractLifeCycle not found
最新的Hadoop 2.2.0 的Source Code 压缩包解压出来的code有个bug 需要patch后才能编译
解决方案:
1)补丁 https://issues.apache.org/jira/browse/HADOOP-10110
2) vi/vim hadoop-2.2.0-src/hadoop-common-project/hadoop-auth/pom.xml
3) 在dependencys中添加
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-util</artifactId>
<scope>test</scope>
</dependency>