如何编译从Github上下载的Spark源码,然后使用Spark的Api?
本文将先介绍编译Spark最新源码的步骤,供参考。
一、环境准备
Centos-6.8
Scala-2.11.8
Jdk-1.8
Spark-2.3.0-SNAPSHOT(git clone https://github.com/apache/spark.git)
Python-2.7.10
Maven-3.3.9
二、编译
使用maven编译源码,命令行如下
执行以下命令之一:
1、mvn clean package -Dmaven.test.skip=true
2、mvn clean install -Dmaven.test.skip=true (发布到maven本地仓库中)
3、mvn -DskipTests clean package
4、mvn -DskipTests clean install (发布到maven本地仓库中)
注意:
为了防止mvn内存溢出,需要vim $MAVEN_HOME/bin/mvn
MAVEN_OPTS="$MAVEN_OPTS -XX:MaxPermSize=256m "
windows下
set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=4096m
三、等待编译完成
网络状况好或者提前已经下载好maven的相关插件和依赖包时,速度会很快,约15分钟左右。否则可能失败,或者耗时长。
四、使用api
1、构建maven项目
2、通过pom.xml引用即可
参考:
https://spark.apache.org/docs/latest/building-spark.html