老旧的hadoop 怎么编译部署到新版本的windows服务器上网上是有不少现成的hadoop windows二进制文件的,但都是有特定的编译环境和相应的系统兼容范围的。总有那么一些时候,现成的不管用,我们得自己来稍作调整,然后自己编译。本笔记是基于在 Windows 11 上为Windows Server 2019编译 Hadoop-3.2.1 实践而整理。其他的版本组合下,做法类似。此次实践过程中反复使用AI对话框豆包查询和解决报错。上一次尝试编译时还没有如此便捷的工具,那个时候需要自己提炼关键词去搜索,而这一次,我可以将报错信息完整复制到对话框中,得到的答案要么直接可以使用,要么很有启发。BUILDING.txt源代码中,有 BUILDING.txt 说明如何构建。其中有Building on Windows的章节。由于外部工具的变化,简单遵循该内容不能完成编译,但其内容主体提供了重要的信息。需要的前置条件:Java JDK 1.8Maven 3.0+ProtocolBuffer 2.5.0CMake 3.1+Visual Studio 2010 Professional or HigherWindows SDK 8.1 - (optional, CPU rate control)zlib - native code bindings for zlib, 版本 zlib-1.2.7Internet connection - downloading Maven and Hadoop DependenciesUnix command-lines tools from GnuWin32: sh, mkdir, …Python - docs需要注意的问题:不要使用 Visual Studio Express, 不支持 64-bit compiling。 此条不再成立。我们此次使用了 Visual Studio Community 2026。下载 Windows SDK 8.1 的链接 - 此条不再成立,在2026年此链接指向了11和10。我们此次使用了 Windows SDK 11。超过 Windows 最长路径的限制的问题. 使用 win-paths-eg.cmd 提供的参考,对编译命令中涉及的文件采用最短的路径。我们采用了新版本的maven插件来缓解此问题。在windows上的编译,native是必须的而不是可选的。工具安装位置除了Visual Studio和Windows SDK,我们将其他的小型工具都统一放到c:\tools下。注意我们的重点是编译windows native部分,而其他的部分我们采用hadoop官方分发的编译后的版本。在编译成功后,只需要将windows native文件覆盖到官方分发目录中即可。准备Java 1.8现在有多个厂家提供基于openjdk的分发可下载,如 amazon, openlogic等。这里采用的是 amazon 提供的分发, amazon-corretto-8.482.08.1-windows-x64-jdk,建议下载zip版本,解压到 c:\tools。Maven 3.0+搜索,然后下载 cmake-3.31.11-windows-x86_64.zip 这个是3.x系列的最新版本。解压到 c:\tools下。maven执行时会从远程下载下载大量的依赖jars,需要配置国内mirror来加速下载。可以在用户目录下的.m2/settings.xml,或实际上是可以直接在maven home/conf/settings.xml中配置,且更方便.mirroridaliyunmaven/idmirrorOf*/mirrorOfname阿里云公共仓库/nameurlhttps://maven.aliyun.com/repository/public