`
zqh08
  • 浏览: 8043 次
社区版块
存档分类
最新评论

Hadoop源码编译

阅读更多

说明: Hadoop目前的版本系列分两条主线,0.20.2及目前的1.X.X属于稳定版,主要bug修复和性能提升方面;而0.23.X和2.X.X属于alpha版本,在系统架构上有较大变化,即所谓的第二代HDFS HDFS Federation和第二代MapReduce Yarn,具体见官网介绍。这篇文章主要介绍Hadoop源码直接编译和eclipse中编译,由于我使用的Hadoop 0.20.2,早段时间升级到1.0.4,考虑到老升级版本也不大方便,就试着自己编译。编译环境:32位ubuntu11.04,eclipse3.3主要如下

 

一、相关知识和需求软件

 

      hadoop0.20.2和1.0.4都是采用ant编译,第二代采用maven编译。

      下载ant软件,版本是1.8.3;svn软件和eclipse中svn插件,ubuntu中自动安装的sudo apt-get install subversion;ubuntu中编译tar的话还需要forrest软件,只能用版本0.8的,我用了最新版本出了错误,后面会解释

 

二、eclipse编译

 

      1、选择某一目录,即源码存放的位置,签出源码0.20.2

      如/home/pigzoo/software目录下 svn co http://svn.apache.org/repos/asf/hadoop/common/tags/release-0.20.2/ hadoop-0.20.2

      2、查看源码根目录中的build.xml,这个文件就是整个软件的编译的步骤和依赖,你可以根据自己的具体情况来选择编译的部分,比如其中默认的就是compile,只编译核心部分,其他的javadoc,插件等都不会编译,先暂时编译核心部分

     在源码根目录下执行命令: ant (相当于ant complie)编译完后可以在build目录看到core等jar文件

      3、在源码跟木下执行命令 ant eclipse-files,即可产生源码eclipse工程。

      4、在eclipse中导入import上一步中源码,选择源码目录即是一个完整的eclipse工程,是不是到这一步就结束了?也许是,也许不是,我的一直存在个问题就是eclipse找不到我装的ant中lib的ant.jar,即unbound classpath variable:'ANT_HOME/lib/ant.jar,这个需要设置下eclipse的环境变量,window菜单——>preference,选择java——>build path->classpath variable中添加ANT_HOME的目录。

      5、对于1.0.4的版本步骤和以上基本一致,要注意的地方就是3步骤中的ant eclipse-files命令变成了ant eclipse,即可生成1.0.4版本对应的eclipse工程文件。

 

三、ubuntu中发行hadoop版本

 

     1、签出源码

     2、在源码根目录中,ant tar时,从build.xml中知道它依赖compile, jar, javadoc, docs, api-report, jar-test,而编译javadoc时需要forrest软件,执行下载好forrest软件,配置好系统环境

     3、安装forrest软件还会存在问题,编译一直不通过,存在错误,查看错误还是javadoc这部分,最后查看网上文档发现是forrest0.8需要jdk1.5,而发行整个版本需要jdk1.6,这个矛盾困扰了很久。当时试着用forrest0.9,但是编译还是错误。最后查看网上文档发现有个较好的解决办法,链接:http://trac.nchc.org.tw/cloud/wiki/waue/2009/0818

     4、javadoc的编译需要forrest0.8和jdk1.5,而编译core则需要jdk1.6,链接中提供的方法能够解决存在的问题。在下载好jdk1.5,配置系统jdk为1.5版本,运行这个命令,具体啥意思我也不是很清楚,如有高人看到说下吧,个人认为是forrest编译时所用的环境变量配置下,在最后的指定jdk1.5的目录。     

 

    5、编译tar,发布版本,命令如下截图。

     6、即可在build目录下看到自己编译的hadoop-***.tar.gz,这就可以部署到自己的hadoop集群。

     7、可能在编译过程中还会存在其他问题,这个主要根据build.xml这个编译文件来决定具体的情况,理清它的思路。对于我这菜鸟要好好学习下编译知识。

 

参考:

1、http://trac.nchc.org.tw/cloud/wiki/waue/2009/0818

2、http://hadoop.apache.org/releases.html

 

 

 

 

  • 大小: 27.8 KB
  • 大小: 28.6 KB
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    hadoop源码编译所需软件包

    在Hadoop源码编译过程中,它用于提升代码质量和稳定性。解压`findbugs-2.0.3.tar.gz`,安装完成后将其路径添加至PATH环境变量,以便在构建Hadoop时运行FindBugs检查。 4. **Hadoop源码包** `hadoop-2.5.0-src.tar....

    Hadoop 源码编译所需软件

    通过以上步骤,我们可以看到,"Hadoop CDH 源码编译所需软件"这个主题涵盖了大数据处理的关键组件和最佳实践,如高效的压缩算法和静态代码分析工具。这些工具和技术的使用对于优化Hadoop CDH的性能、稳定性和安全性...

    Hadoop源码编译需要工具

    标题中的“Hadoop源码编译需要工具”指的是在本地环境中构建Hadoop源代码时所需的必备组件。Hadoop是一个开源的分布式计算框架,主要用于处理和存储海量数据。为了从源代码编译Hadoop,我们需要一些特定的开发工具和...

    hadoop源码编译安装包及安装步骤

    接下来,我们按照以下步骤进行Hadoop源码编译和安装: 1. **获取源码**:使用Git命令克隆Hadoop的源码仓库。例如,你可以运行`git clone https://github.com/apache/hadoop.git`来获取最新的源码。 2. **配置环境*...

    5_尚硅谷大数据之Hadoop源码编译1

    [root@hadoop101 ~]# tar -zxf hadoop-2.7.2-src.tar.gz [root@hadoop101 ~]# cd hadoop-2.7.2-src/ [root@hadoop101 hadoop-2.7.2-src]# mvn package -DskipTests 5.4 常见问题及解决方案 在 Hadoop 源码编译过程...

    Hadoop源码编译.pdf

    编译成功后,你需要替换原有的Native目录,然后通过运行Hadoop的某些命令来验证编译结果,如果没有出现警告或错误,那么恭喜你,Hadoop源码编译已完成。 整个过程可能会遇到各种问题,如依赖冲突、权限问题或者网络...

    hadoop源码编译mvn库

    hadoop源码编译所需要的maven仓库,省去编译时下载时间。

    Hadoop源码编译支持Snappy压缩教程

    ### Hadoop源码编译支持Snappy压缩教程 #### 一、Snappy压缩技术简介 在大数据处理领域,数据压缩技术对于提高存储效率和降低I/O开销具有重要作用。Snappy是一种高效的压缩与解压缩算法,它在压缩比与速度之间取得...

    hadoop源码编译

    ### Hadoop源码编译与Snappy压缩配置详解 #### 一、背景介绍 Hadoop是一款开源的大数据处理框架,其核心组件包括HDFS(分布式文件系统)和MapReduce(分布式计算模型)。在某些情况下,当用户直接从官网下载Hadoop...

    hadoop源码编译.doc|hadoop源码编译.doc

    在深入探讨Hadoop源码编译的过程中,我们首先需要了解Hadoop是什么以及它的重要性。Hadoop是一个开源的分布式计算框架,由Apache软件基金会维护,主要由HDFS(Hadoop Distributed File System)和MapReduce两大部分...

    Hadoop源码编译 PDF 下载

    接下来,按照以下步骤进行源码编译: 1. **获取源码**:打开终端,使用`git clone`命令从Hadoop的官方仓库克隆源码: ``` git clone https://github.com/apache/hadoop.git ``` 2. **进入源码目录**: ``` cd...

    win 7 64上编译 Hadoop 2.7.3 源码

    2. **执行编译命令**:打开命令提示符窗口,进入Hadoop源码目录,运行`mvn clean package -DskipTests -Dmaven.javadoc.skip=true -Pdist,native -Dtar`命令来开始编译过程。该命令将跳过测试、Javadoc生成,并编译...

    【Hadoop篇06】Hadoop源码编译1

    在本篇【Hadoop篇06】中,我们将探讨如何编译Hadoop源码,这是一个对深入了解Hadoop内部机制至关重要的过程。以下是编译Hadoop源码所需的关键步骤和相关知识点: 1. **准备工作** - **CentOS联网**:确保Linux系统...

    Hadoop源码编译好的源码(eclipse可直接导入)

    本资源提供了已经编译好的Hadoop 2.7.3版本的源码,适用于Eclipse环境,方便开发者进行深入学习和二次开发。 首先,让我们来了解一下HDFS。HDFS是Hadoop的核心组件之一,是一个分布式文件系统,设计目标是能够在...

    官网荡下的源码,自己亲手编译的hadoop2.3.0 64位,给大家分享下

    官网荡下的源码,自己亲手编译的hadoop2.x 64位,给大家分享下 文件太大放的是百度网盘链接,目前有hadoop2.3.0,后面的版本我会陆续更新。

    win10系统编译好的hadoop源码

    在Windows 10环境下编译好的Hadoop源码对于开发者来说是一份宝贵的资源,因为它通常已经解决了在Windows系统上运行Hadoop时可能遇到的兼容性和配置问题。 标题中的"win10系统编译好的hadoop源码"指的是专门为...

    hadoop源码

    Hadoop源码编译和安装的过程也包含了许多知识点。首先,你需要一个Java开发环境,因为Hadoop是用Java编写的。然后,通过Maven或Ant等构建工具来编译源码。在源码包hadoop-2.8.5-src中,包含了一系列的配置文件和源...

    Hadoop源码eclipse编译.pdf

    ### Hadoop源码在Eclipse中的编译指南 #### 一、引言 随着大数据技术的发展,Hadoop作为处理大规模数据集的一种分布式计算框架,其重要性不言而喻。对于开发者而言,深入理解Hadoop的工作原理及其实现机制是非常有...

    hadoop-2.6.0-cdh5.14.0 hadoop.dll winutils

    所以自己就用cdh的hadoop源码编译了一遍,踩了很多坑。最终还是解决了,能在windows中调试mapreduce了。 ps:csdn上看到同样的资源 竟然要10分,下不起 下不起。只能自己做了,5分服务大众。。。

    编译Hadoop源码需要的maven文件

    当你需要对Hadoop源码进行编译时,Maven是必不可少的工具,因为它可以帮助我们自动化构建过程,管理项目的依赖关系,以及执行各种构建生命周期阶段。 编译Hadoop源码的过程涉及到以下几个关键知识点: 1. **Maven...

Global site tag (gtag.js) - Google Analytics