前言
这里我是在windows环境下编译的,具体环境是:Windows 10、JDK8、Git-2.23.0-64-bit.exe windows版本。
如果是在linux环境下编译,过程是一样的spark源码编译过程,可以省略第2步。
1.从官网下载源码
2.安装Git,并规划Git bash环境
Git安装完成后spark源码编译过程,运行git bash进入bash环境,然后cd切换到spark源码根目录。
特别注意:Windows下的spark编译要在bash环境下进行(我这里使用的是git bash),否则编译会报错,错误信息如下:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.8:run (default) on project spark-core_2.11: An Ant BuildException has occured: Execute failed: java.io.IOException: Cannot run program "bash" (in d
irectory "E:bigdatasparksourcespark-2.4.3core"): CreateProcess error=2, 系统找不到指定的文件。
3.运行编译命令
编译时最好指定-DskipTests跳过测试,否则测试可能无法通过,导致编译失败。 如下:
$ mvn clean package -DskipTests
编译时还可以指定hadoop的版本、是否编译yarn等,具体请参考官方文档(见文末链接),如下:
$ mvn clean package -Phadoop-2.6 -Dhadoop.version=2.6.4 -Phive -Phive-thriftserver -Pyarn -DskipTests
编译过程需要下载很多依赖包。 推荐使用阿里云镜像。 下面是我编译成功的结果。
参考:
1.
2.