感觉国内Hadoop的中文资料相对比较少,自己总结一些。
什么是Hadoop。就不说了上Apache上自己看
一、获取Hadoop的源码。以Hadoop的0.21.0的版本为例。
Hadoop Version Control System
SVN:
http://svn.apache.org/repos/asf/hadoop/common
可以下载对应的trunk的版本,也可以下载对应的tags的版本。我下载的为
http://svn.apache.org/repos/asf/hadoop/common/tags/release-0.21.0
目前Hadoop主要包括common(公共组件),hdfs(分布式文件系统),mapreduce(Map/Reduce)三部分,common为hdfs,mapreduce提供基本通用的功能,mapred 则是基于 hdfs. 三者都可以独立编译。
目前只拿一个common工程在eclipse中编译。
准备工作,安装JDK,Subclipse的Eclipse插件,另外Hadoop的项目管理基于ant和ivy进行管理的,所以我们还需要安装ant和ivy,所以我们还需要安装ivyDE的Eclipse插件。下面我们进行编译源码。
1、下载源码,http://svn.apache.org/repos/asf/hadoop/common/tags/release-0.21.0/common
2、在Eclipse中 需要的操作如下:
- 在 eclipse 中,单击菜单 File > Import,选择 SVN > 从 SVN 检出项目,单击 Next 按钮进入下一步;
- 选中“创建新的资源库位置”,单击 Next 按钮后输入上述对应部分的地址,继续等待列出目录结构,选择根目录即可;
- 下一步选择“作为新项目检出,并使用新建项目向导进行配置”,不要选择“作为工作空间中的项目检出”,因为无法选择项目类型;点击 Finish 按钮进入 New Project 向导;
- 选择项目类型为 Java Project,取好项目名称,JRE最好选1.6,点击 Next 按钮,进入 Java Setting 窗口;
- 将 Default output folder 由 .../bin 更改为 .../build/classes(或其他),以免 eclipse 自动清空 bin 文件夹下手工编写的文件;点击 Finish 按钮等待下载完成。
此时会有很多文件标有红色叉号,属正常现象,后面我们使用 ant 编译出配套的 eclipse 项目文件则可消除这些错误。
3、设置使用 Ant Builder 进行编译
以 mapred 部分为例,设上步新建的项目为 MapReduce.
- 右键单击该项目(或从 Project 菜单下)选择 Properties,找到 Builders 选项卡,取消勾选 Java Builder,单击 New 按钮选择 Ant Builder,进入 Edit Configuration 窗口;
- 初始为 Main 选项卡,Name栏可设置名称 MapReduce_Builder(或其他),Buildfile栏通过 Browse Workspace 按钮选择 MapReduce 项目下的 build.xml 文件;
- 而 后切换到 Targets 选项卡,单击 Manual Build 栏的 Set Targets 按钮,除了默认选项 compile 外,勾选 eclipse(自动生成eclipse项目文件);如果查找不便可勾选下方 Sort targets(按名称字母序)和 Hide internal targets.
确认后项目即开始进行编译(时间较长),可以看到控制台(Console)有各种输出,期间会自动下载若干文件。
完成后右键单击项目,选择 Refresh(或按 F5 键),可以看到项目组织结构发生了变化,原有的红色叉号也消失了。
【注意】由于项目规模较大,在第一遍编译完成后,可在 Project 菜单下取消勾选 Build Automatically.
|