在Windows操作系统上编译Hadoop源码

原创 2016年08月19日 17:12:29

在上篇博客中,笔者提到曾经在Windows上编译Hadoop源码。这里将具体流程列出。

一、操作系统和Hadoop版本

Windows 10专业版(64位),Hadoop 2.7.2。

二、安装软件依赖

1、jdk 1.8
安装后设置环境变量(Path中加入java路径;JAVA_HOME,指向jdk目录)。
2、Ant 1.9.7
将文件解压到C:\ant目录下,设置环境变量(Path中加入ant路径)。
3、Maven 3.3.9
将文件解压到C:\maven目录下,设置环境变量(Path中加入mvn路径)。
4、Protocol Buffers 2.5.0
下载(https://github.com/google/protobuf/releases/tag/v2.5.0)后,将文件解压到C:\protobuf目录下,设置环境变量(Path中加入protoc.exe路径)。
5、CMake 3.2.1
下载(https://cmake.org/files/v3.2/)后,安装到C:\CMake目录下,设置环境变量(Path中加入cmake路径)。
6、Visual Studio 2015

三、编译

1、将Hadoop源码放在C:\build\目录下
2、更改VC++编译设置
用Visual Studio 2015分别打开C:\build\hadoop-common-project\hadoop-common\src\main\native\winutils.sln和C:\build\hadoop-common-project\hadoop-common\src\main\native\native.sln,升级VC++编译器和库。
更改C:\build\hadoop-hdfs-project\hadoop-hdfs\pom.xml文件中第446行内容,将两个“Visual Studio 10”改成“Visual Studio 14”。
3、Maven编译
打开cmd(不需以管理员身份),进入C:\build\目录,使用如下命令进行编译
mvn clean package -Pdist,native-win -DskipTests -Dtar -Dmaven.javadoc.skip=true -e
编译的结果在C:\build\hadoop-dist\target\hadoop-2.7.2目录下。

四、启动集群

使用上面的编译结果可以在Windows操作系统上启动一个伪分布式集群,从而可以测试MapReduce程序。但需要安装Cygwin,并设置环境变量(Path中加入cygwin64\bin的全路径)。
编译后,将C:\build\hadoop-dist\target\hadoop-2.7.2目录下的内容复制到目标工作目录下,修改相关配置(具体修改方式可在网上查询),然后用如下命令启动集群
hdfs namenode -format
start-dfs.cmd
start-yarn.cmd

【注】首次编译请严格遵守上面所提各依赖软件的版本。
版权声明:本文为博主原创文章,未经博主允许不得转载。

教你Windows平台安装配置Hadoop2.5.2(不借助cygwin)

刚入门hadoop,开发环境的搭建估计能把一部分人逼走。我也差点疯了。 估计能看到这篇文章的小伙伴们都饱受cygwin和各种配置文件的折磨了吧?如果你不想在linux上搭建,又不想安装cygwin。...
  • antgan
  • antgan
  • 2016年07月29日 17:56
  • 18431

在windows环境下编译hadoop

1、环境准备1.1 maven的安装去网上下载maven的安装包,解压。再配置环境变量,将%M2_HOME%\lib添加到path中。 安装完成之后,在cmd中键入 mvn -v,出现 ![这里写图...
  • GYQJN
  • GYQJN
  • 2016年08月18日 19:50
  • 1799

Windows环境编译Hadoop 2.7.2

刚好工作需要,预研了下Hadoop,由于中间也出现了一些编译的问题,现整理处理正常的编译顺序,避免下次继续掉坑。...
  • JiffyChen
  • JiffyChen
  • 2016年03月22日 18:21
  • 864

windows编译hadoop 2.x Hadoop-eclipse-plugin插件

Hadoop2.x之后没有Eclipse插件工具,我们就不能在Eclipse上调试代码,我们要把写好的java代码的MapReduce打包成jar然后在Linux上运行,所以这种不方便我们调试代码,所...
  • congcong68
  • congcong68
  • 2014年12月23日 08:59
  • 7482

windows7 64位编译hadoop2.7.1

编译hadoop,谁知道遇到这么多问题,写下步骤: 1、下载hadoop2.7.1。http://hadoop.apache.org/releases.html 2、下载maven3.3.3。bi...
  • baidu_23220845
  • baidu_23220845
  • 2015年09月14日 23:13
  • 2575

Windows 10编译Hadoop 2.6.0源码

本文介绍了在Windows10上编译Hadoop2.6.0的过程以及问题与解决方法。 转载自:https://www.zybuluo.com/ncepuwanghui/note/343755 原作...
  • farawayzheng_necas
  • farawayzheng_necas
  • 2017年01月16日 11:55
  • 1672

windows8 vs2012 编译hadoop2.6

最近想用C++访问HDFS的文件,因为是在windows上做开发,但apache并没有编译出windows版本的C++开发包,因此决定自己在windows上做编译,在编译过程中遇到一些问题,特此记录下...
  • for_onxx
  • for_onxx
  • 2015年06月25日 18:00
  • 759

windows 64位编译hadoop 3.0源码

我这边是windows10 64位编译hadoop 3.0源码        1. 安装protobuffer,主要是下载protoc-2.5.0-win32,并将其解压,添加到环境变量Path中。...
  • imzhiyang
  • imzhiyang
  • 2018年01月05日 14:25
  • 51

在windows 7 64bit下编译Hadoop 2.6.0源码

基本环境: Windows 7 64bit NTFS格式文件系统 Administrator账户 JDK 7u76(Oracle官网下载) hadoop-src-2.6.0.tar.gz(在官网下载的...
  • oneinmore
  • oneinmore
  • 2015年04月11日 17:28
  • 3430

hadoop源码编译

1.下载源码 2.安装必要软件,并将下述软件的bin添加到path环境变量里 a).apache-maven-3.3.9 b).protobuf-2.5.0 c).winsdk7.1 d)....
  • zfy1355
  • zfy1355
  • 2016年02月23日 17:49
  • 503
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在Windows操作系统上编译Hadoop源码
举报原因:
原因补充:

(最多只允许输入30个字)