`

Apache Hadoop 源代码编译环境搭建

 
阅读更多
粗略整理的一个步骤。
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官方的说明:
 
关于CDH 4.3.1(Hadoop 2.0.0)的编译
CDH4.3.1要求Java版本必须是1.6,直接使用java1.7会报java版本不匹配错误。通过修改pom.xml使用java 1.7编译时会出现编译问题。
分享到:
评论

相关推荐

    Hadoop 源码编译所需软件

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

    如何编译Apache Hadoop2.4.0源代码

    本教程将详细解释如何在Linux环境下编译Apache Hadoop 2.4.0的源代码。 首先,确保你已经安装了Java Development Kit (JDK)。Hadoop是用Java编写的,因此编译Hadoop需要JDK。你可以从Oracle官方网站下载JDK 7的最新...

    Hadoop源码编译需要工具

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

    Hadoop-2.7.2源码及编译jar包.zip

    Hadoop-2.7.2源码及编译jar包.zip,包含 Apache Hadoop 源码包、编译后的 Win7、Win10、以及 Linux 包。 Hadoop-2.7.2源码及编译jar包.zip,包含 Apache Hadoop 源码包、编译后的 Win7、Win10、以及 Linux 包。 ...

    Hadoop源码编译 PDF 下载

    3. **Git**:Hadoop的源代码托管在GitHub上,所以你需要安装Git以便克隆源码仓库。 接下来,按照以下步骤进行源码编译: 1. **获取源码**:打开终端,使用`git clone`命令从Hadoop的官方仓库克隆源码: ``` git ...

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

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

    win 7 64上编译 Hadoop 2.7.3 源码

    ### Win 7 64位系统上编译Hadoop 2.7.3源码的知识点 #### 一、背景介绍 在当前大数据处理技术快速发展的背景下,Hadoop作为主流的大数据处理框架之一,被广泛应用于各类场景之中。对于开发者来说,能够熟练地在自己...

    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源码编译

    尽管这个警告不会影响集群的基本运行,但为了优化性能,推荐的做法是通过编译Hadoop源代码来生成所需的本地库,并将其部署到集群中。 #### 二、准备工作 在开始Hadoop源码的编译前,需要确保系统中已经安装了必要的...

    centos7 64位下编译Hadoop2.7.2源码库文件

    2. **获取源码**:通过Git克隆Hadoop 2.7.2的源代码仓库: ``` git clone https://github.com/apache/hadoop.git cd hadoop git checkout tags/hadoop-2.7.2 ``` 3. **配置环境变量**:确保`JAVA_HOME`指向...

    Hadoop源码及编译工具

    这个压缩包文件可能包含了多个版本的源码,例如"Hadoop编译"这样的文件名,通常意味着它包含了一个或多个特定版本的源代码。 在获取源码后,你需要搭建一个适合编译Hadoop的开发环境。这通常包括以下组件: 1. **...

    Hadoop源代码eclipse编译教程[汇编].pdf

    本文详细介绍了如何使用Eclipse编译Hadoop的源代码,包括下载Hadoop源代码、准备编译环境和编译Hadoop等步骤。通过本文,读者可以更好地掌握Hadoop的编译和使用,从而更好地应用Hadoop在大数据处理和分析中。

    hadoop资料,hadoop基础,Hadoop源代码eclipse编译教程

    本教程主要围绕"Hadoop基础"和"Hadoop源代码eclipse编译教程"展开,旨在帮助初学者深入理解Hadoop并掌握其实际操作技能。 首先,我们要了解Hadoop的基本概念。Hadoop是由Apache基金会开发的一个开源项目,基于Java...

    【Hadoop篇06】Hadoop源码编译1

    - **make和cmake**:这两个是构建工具,用于编译和管理源代码。 4. **编译步骤** - 解压缩所有必要的软件包到适当目录。 - 设置相应的环境变量,并通过`source /etc/profile`使其生效。 - 进入Hadoop源码目录,...

    apache hadoop v2.7.0官方最新版

    `hadoop-2.7.0-src.tar.gz`是源代码包,包含了Hadoop的所有源代码,开发者可以编译这个源代码以构建自定义的Hadoop实例。 `安装必看.txt`很可能包含了安装和配置Hadoop v2.7.0的重要提示和步骤,包括设置环境变量、...

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

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

    win10系统编译好的hadoop源码

    标题中的"win10系统编译好的hadoop源码"指的是专门为Windows 10操作系统编译优化过的Hadoop源代码。这意味着该版本的Hadoop已经被配置为在Windows环境下运行,可能包括对Windows路径、文件系统API以及批处理命令的...

    Spark+Hadoop+IDE环境搭建

    1. **下载Spark**:从Apache官网下载Spark源码或预编译版本,确保与Hadoop版本兼容。 2. **配置环境变量**:设置SPARK_HOME,并在PATH中添加Spark的bin目录。 3. **配置spark-env.sh**:在SPARK_HOME/conf目录下,...

Global site tag (gtag.js) - Google Analytics