Apache Hadoop 源代码编译环境搭建
2013-11-11 11:16
441 查看
粗略整理的一个步骤。
1. 下载 Apache Hadoop 源码包,解压(放在不需要root权限的路径下,避免因为目录权限不够导致编译错误,或者全程使用root用户)
2. 安装工具链,
参考源码包下的BUILDING说明及apache网站上给出的帮助.
hadoop 依赖库protobuf: https://code.google.com/p/protobuf/
安装完毕后执行mvn命令,若提示库错误则执行sudo ldconfig.
3. cd至源码根目录,编译源码
4. 编译成功应生成hadoop-maven-plugins 目录,cd进到该目录, 执行mvn install
5. 返回代码根目录执行mvn install
6. 生成Eclipse工程文件
7. 启动eclipse,工作区选代码根目录,执行File/Import... ,对话框source root选择代码根目录,自动检测到一系列工程,全选导入
等待Eclipse自动编译结束,会出现很多错误,还需要执行以下步骤
8. 配置 Eclipse M2_REPO 变量
Window/Preference/Java/Build Path, M2_REPO默认路径为 /home/<usename>/.m2/repository
9. apache hadoop 2.2.0生成的Eclipse工程文件里 hadoop-streaming 有一个source code外部引用路径不正确,手动修正(capacity-scheduler.xml)
至此,应该没有任何编译错误了。
IntelliJ Idea通过导入Eclipse工程即可完成配置,导入工程之后会提示未定义的Build Path M2_REPO, 修正之即可.
Apache官方的说明:
http://wiki.apache.org/hadoop/EclipseEnvironment
http://wiki.apache.org/hadoop/HowToContribute
关于CDH 4.3.1(Hadoop 2.0.0)的编译
CDH4.3.1要求Java版本必须是1.6,直接使用java1.7会报java版本不匹配错误。通过修改pom.xml使用java 1.7编译时会出现编译问题。
1. 下载 Apache Hadoop 源码包,解压(放在不需要root权限的路径下,避免因为目录权限不够导致编译错误,或者全程使用root用户)
2. 安装工具链,
参考源码包下的BUILDING说明及apache网站上给出的帮助.
hadoop 依赖库protobuf: https://code.google.com/p/protobuf/
apt-get -y install ant maven build-essential autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev
安装完毕后执行mvn命令,若提示库错误则执行sudo ldconfig.
3. cd至源码根目录,编译源码
mvn compile -Pnative
4. 编译成功应生成hadoop-maven-plugins 目录,cd进到该目录, 执行mvn install
5. 返回代码根目录执行mvn install
6. 生成Eclipse工程文件
mvn eclipse:eclipse -DskipTests
7. 启动eclipse,工作区选代码根目录,执行File/Import... ,对话框source root选择代码根目录,自动检测到一系列工程,全选导入
等待Eclipse自动编译结束,会出现很多错误,还需要执行以下步骤
8. 配置 Eclipse M2_REPO 变量
Window/Preference/Java/Build Path, M2_REPO默认路径为 /home/<usename>/.m2/repository
9. apache hadoop 2.2.0生成的Eclipse工程文件里 hadoop-streaming 有一个source code外部引用路径不正确,手动修正(capacity-scheduler.xml)
至此,应该没有任何编译错误了。
IntelliJ Idea通过导入Eclipse工程即可完成配置,导入工程之后会提示未定义的Build Path M2_REPO, 修正之即可.
Apache官方的说明:
http://wiki.apache.org/hadoop/EclipseEnvironment
http://wiki.apache.org/hadoop/HowToContribute
关于CDH 4.3.1(Hadoop 2.0.0)的编译
CDH4.3.1要求Java版本必须是1.6,直接使用java1.7会报java版本不匹配错误。通过修改pom.xml使用java 1.7编译时会出现编译问题。
相关文章推荐
- Hadoop_2.1.0 MapReduce序列图
- 单机版搭建Hadoop环境图文教程详解
- hadoop常见错误以及处理方法详解
- hadoop 单机安装配置教程
- Apache Hadoop版本详解
- linux下搭建hadoop环境步骤分享
- hadoop client与datanode的通信协议分析
- hadoop中一些常用的命令介绍
- Hadoop单机版和全分布式(集群)安装
- Hadoop安装感悟
- hadoop安装lzo
- HDFS 文件操作
- HBase基本原理
- HDFS DatanodeProtocol——sendHeartbeat
- HDFS DatanodeProtocol——register
- Hadoop集群提交作业问题总结
- Hadoop源码分析 HDFS ClientProtocol——addBlock
- Hadoop源码分析HDFS ClientProtocol——create
- Hadoop源码分析FSNamesystem几个重要的成员变量
- Hadoop源码分析HDFS ClientProtocol——getBlockLocations