Windows 环境下编译Hadoop源码

Windows源码编译Hadoop 2.8.0 相关依赖1.JDK 1.7+ 2.maven 3.0+ 3.findbugs 4.zlib headers 1.2.7+ (如果要编译得到native code) 5.cmake 2.6+ 6.protocbuffer 2.5.0 7.windows SDK or Visual Studio 2010 SP1(如果是vs2010,最好升级为sp1,否则那个cvtres.exe会疯掉) 阅读详情

Windows 环境下编译Hadoop源码

为了便于在Windows系统平台开发和调试Hadoop相关程序,我们需要重新编译Hadoop源码,使其能够在Windows环境下运行。我们需要一些额外的软件工具来辅助完成编译工作。

准备工作

Hadoop源码包根目录下的BUILDING.txt文档,介绍了当前Hadoop版本在不同平台编译所需软件和注意事项:
注意事项
本文所需罗列如下:
- 操作系统:Windows 10 64位
- Hadoop:hadoop-2.6.5-src.tar.gz
- JDK:jdk-7u65-windows-x64.exe
- Maven:apache-maven-3.3.9-bin.zip
- CMake:cmake-3.12.0-rc1-win64-x64.zip
- ProtocolBuffer:protobuf-2.5.0.zip
- protoc:protoc-2.5.0-win32.zip
- zlib:zlib-1.2.11.tar.gz
- Cygwin:3.12.0 setup-x86_64.exe
- Visual Studio 2010
以上软件包均可在我的百度网盘直接下载:https://pan.baidu.com/s/1YAAtLwKgoclEPz0pEej7BQ

安装软件

  • JDK:此处不再累述
  • Maven:此处不再累述
  • Hadoop:解压到指定目录
  • CMake:解压到指定目录
  • ProtocolBuffer:解压到指定目录
  • protoc:解压并将protoc.exe放置在ProtocolBuffer的src目录
  • zlib:解压到指定目录
  • Cygwin:安装到指定目录
  • Visual Studio 2010 :安装到指定目录

配置环境变量

  • Platform:新建系统变量Platform=x64
  • JDK:不再累述
  • Maven:将bin目录添加至PATH系统变量
  • CMake:将bin目录添加至PATH系统变量
  • ProtocolBuffer:将src目录添加至PATH系统变量
  • zlib:新建ZLIB_HOME系统变量,并指向其解压根目录
  • Cygwin:将bin目录添加至PATH系统变量
    配置环境变量
    环境变量配置好后,进入ProtocolBuffer的java子目录,使用mvn install命令将其注入进maven的本地仓库中,并使用protoc --version 验证:
    安装ProtocolBuffer

编译Hadoop

上述准备工作完成后,便可以编译Hadoop了。使用Visual Studio x64 Win64 命令提示(2010)进入Haddoop源码包根目录,执行mvn package -Pdist,native-win -DskipTests -Dtar命令重新编译打包(需要耐新等待,此处足足执行了26min54s):
编译Hadoop
编译成功的基于Windows平台的文件将会存放在根目录下的hadoop-dist\target目录:
编译成功后的文件

总结

由于我在最初编译Hadoop的过程中遇到了各种各样的问题,所以才有了写这样一篇博文的念头,以便自己或他人日后查阅。
以上配置执行的过程经过一路填坑,亲测可以正确无误的编译成功,因此没有记录太多中间遇到的编译中断、失败的问题。总结下来无非就是各种软件版本不匹配的问题,我在一开始本着越新越好的原则,在Jdk8、Visual Studio 2017等平台编译,总是出错,最终才领会到彼此匹配才是最好。所以提醒各位编译前先了解下Hadoop的版本,找到最合适的编译环境。

为了方便大家使用,现将编译后的软件包共享出来:

Windows虚拟机中的Hadoop安装与配置指南 计数器是Hadoop MapReduce用于记录每个任务执行过程中的关键事件计数的机制。这些计数器可以在数据处理流程中提供实时反馈,有助于开发者了解作业的执行细节,并识别可能的问题。通过计数器,开发者可以了解各种类型事件的发生频率,如数据倾斜、记录格式错误、特定条件触发等。在深入了解如何使用这些工具之前,让我们先来简要回顾一下Hadoop生态系统中的几个关键组件及其作用。Pig是一个高级的数据流语言和执行框架,用于处理大型数据集。 阅读详情

相关推荐

安装包下载jdk-7u65-windows-x64.rar安装包

DK,全名是Java SE Development Kit,Java的开发环境,使用最广泛的Java SDK,是开发和编译JAVA程序,必不可少的环境,JDK是学好Java的第一步。

android 安装gem 命令,中文Win7下成功安装calabash-android步骤

Calabash-android是支持android的UI自动化测试框架,网上看见很多同学说,安装calabash比较费劲,特别是Windows下安装,也没有一个详细的安装手册可供参考。正好,今天在Windows 7 上安装calabash-android成功,忍不住要分享一下。我为什么要特别在标题中指出中文Win7?因为我第一次在英文Win7下没碰到任何问题,第二次在中文Win7下安装碰到两个大...

weixin_33982355的博客 563

jdk-7u65-windows-x64.exe

Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

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

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

winfield821的博客 4188

jdk-7u5-windows-x64

jdk1.7 64位 官方正式版下载jdk1.7 64位 官方正式版下载jdk1.7 64位 官方正式版下载jdk1.7 64位 官方正式版下载

jdk-7u21-windows-x64.exe

java最常用的jdk版本,在windows下双击运行可直接安装,安装成功后,配上环境变量就可以使用。

在Windows平台编译Hadoop-3.3.5源码

【代码】在Windows平台编译Hadoop源码。

butterfly_q的博客 1172

jdk7jdk-7u65-windows-x64.rar

window 64位专用

Hadoop源码环境搭建及编译(Windows 、MAC)

Hadoop源码环境搭建及编译(Windows 、MAC) Windows 1. 下载对应版本的Hadoop源码包 2. 编译Hadoop源码 编译源码最好是在linux平台,此处用CentOS 7.4平台编译源码 使用root用户编译 所有软件压缩包,放到**/opt/apps**目录 2.1 查看编译说明文件 将hadoop-2.7.0-src.tar.gz源码包放到/opt目录下 将源码...

htfenght的博客 1799

jdk-7u67-windows-x64.exe

jdk-7u67-windows-x64.exe 资源:http://download.csdn.net/user/ajlgl/uploads 百度云:https://pan.baidu.com/s/1dESLQY9

jdk-7u75-windows-x64.exe

jdk-7u75-windows-x64.exe

Hadoop编译源码和windows环境准备

HDFS客户端环境准备 1、根据自己电脑的操作系统拷贝对应的编译后的hadoop jar包到非中文路径(例如:D:\hadoop-2.7.2) 2、配置 HADOOP_HOME 环境变量 3、配置Path环境变量 ...

wokoone的博客 358

实现labelme批量json_to_dataset方法

labelme可以帮助我们快速的实现Mask-RCNN中数据集json文件的生成,然而还需要我们进一步的将json转成dataset,可以直接在cmd中执行labelme_json_to_dataset.exe C:\Users\Administrator\Desktop\total\1.json(路径),但是这个过程需要我们一个json文件的生成,过程很慢。 一、打开abelm...

简简单单 5万+

Hadoop源码编译过程

前言 由于工作的需要,需要对hadoop源码进行修改,所以需要先对源码进行编译。此处主要在两类环境下编译: linux7.0 mac系统 hadoop源码编译 linux环境 环境说明: 1、Linux系统为centos7.0 3、Hadoop为hadoop-2.8.4-src.tar.gz 4、JDK为1.8.0_201 5、Maven为3.6.1 6、cmake 7、protobuf...

九天的博客 2559

基于一维卷积神经网络对机械振动信号进行分类并加以预测

基于一维卷积神经网络对机械振动信号进行分类并加以预测 *使用一维卷积神经网络训练振动信号进行二分类 2020年7月16日,一学期没等到开学,然而又放假了。 总览优快云中大多数卷积神经网络都是对二维图片进行分类的,而图片也都是常见的猫狗分类,minst手写数字分类。一维卷积神经网络的使用非常少见,有也是IDMB情感分类,和鸢尾花分类的。 作者研究生就读于河北一所双飞,全国排名270多,哈哈哈,不吹不黑。 在网上翻来翻去找不到一篇可以利用的代码去研究我的机械故障诊断,后来在无奈下到某宝搜寻到一段代码,可以利用

qq_45714906的博客 1万+

社会网络仿真软件:NetLogo_(14).社会网络数据导入与导出

在NetLogo中,社会网络的仿真不仅依赖于模型的内部逻辑,还需要能够灵活地导入和导出数据。这使得用户可以利用外部数据来初始化模型,或者将模型的运行结果导出以便进一步分析。本节将详细介绍如何在NetLogo中实现社会网络数据的导入和导出,包括常见的数据格式和具体的代码示例。

kkchenjj的博客 600

Hadoop入门系列(7)-Windows10环境下源码编译hadoop-2.9.2

基础环境准备 都是常用开发环境,程序员一般都有这个环境,安装方法不赘述,实在不知道的自行百度 1.下载源码并解压到D盘根目录下,查看编译说明。 官网下载地址 Github克隆地址 Requirements: * Windows System * JDK 1.7 or 1.8 * Maven 3.0 or later * Findbugs 1.3.9 (if running findbugs) * ProtocolBuffer 2.5.0 * CMake 2.6 or newer * Windows SD

记录知识、锤炼自我 574

【数据集】1970-2023年全球温室气体排放 GHG 数据集 EDGAR

1970-2023年全球温室气体排放 GHG 数据集 EDGAR

WW、forever的博客 1172

Windows下编译 Hadoop

Windows下编译 Hadoop-2.9.2 系统环境 系统: Windows 10 10.0_x64 maven: Apache Maven 3.6.0 jdk: jdk_1.8.0_201 ProtocolBuffer: portoc-2.5.0 zlib: 1.2.3-lib OpenSSL: 1_0_2r cmake: 3.14.3-win64-x64 Cygwin: 2.897_x86...

leone的博客 2224

一、适配显示服务

基于rk3568适配显示服务,调动gpu;

XiaoC_Android的博客 1001

【Mode】多模干涉仪的设计 Multi-mode interferometer(MMI)

与 Splitter 器件一样,MMI 器件也是一种常见的分光器件,可以根据用户的需求将光束分成不同的比例。本文,我们将介绍如何仿真 MMI 器件。这里我们使用的是 1x2 MMI,其本质上是由四个部分组成的,中间的矩形多模式干涉区域以及左右两侧的三个 taper 模式转换区域。之前的教程中我们也提及了,为了获取稳定的模式场分布,通常,我们需要进行模式收敛性扫描。这里以官网给出的案例为例。如何提取 S 参数我们先暂时不做介绍,后续有时间了我们再做介绍。

u011699626的博客 1212

hadoop入门-在windows上编译x64位hadoop

hadoop入门-在windows上编译x64位hadoop

zhanghaiyang9999的专栏 2082

基于Qt C++开发一套大疆农业无人机的AI飞控系统

如果需要补充**多机协同作业代码**、**农田测绘数据导出**、**作业数据统计大屏**或**移动端地面站适配**功能,可以告知具体需求,我会针对性完善。"开启" : "关闭") << "喷洒,流量:" << flowRate << "L/min";emit errorOccurred(QString("SDK初始化失败,错误码:%1").arg((int)ret));report += QString("问题区域数量:%1\n").arg(info.problemAreas.size());

寒寒豆豆软件公司的博客 380
上一篇: SpringMVC集成Swagger2
Impler
博客等级 码龄8年 4粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值