Spark1.0源码编译

编译方式一:maven
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"
mvn -Pyarn -Phive -Dhadoop.version=2.3.0-cdh5.0.0 -Dyarn.version=2.3.0-cdh5.0.0 -DskipTests clean package

参数说明:
-Pyarn:支持yarn 
-Phive:Spark SQL中支持Hive
-Dhadoop.version:hadoop版本号
-Dyarn.version:yarn版本号

详细信息参见官方文档:http://spark.apache.org/docs/latest/building-with-maven.html

编译方式二:sbt
SPARK_HADOOP_VERSION=2.3.0-cdh5.0.0 SPARK_YARN=true SPARK_HIVE=true sbt/sbt assembly

参数说明:同编译方式一


编译方式三:make-distribution.sh
./make-distribution.sh --hadoop 2.3.0-cdh5.0.0 --with-yarn --with-hive --tgz

参数说明:注意要严格按照如下参数顺序(可参考make-distribution.sh)
--hadoop VERSION:对应的Hadoop版本,默认为1.0.4
--with-yarn:是否支持YARN,默认不支持
--with-hive:是否支持在Spark SQL 中使用hive,默认不支持
--with-tachyon:是否支持Tachyon,默认不支持
--tgz:在根目录下生成 spark-$VERSION-bin.tgz,默认不生成
--name NAME:和--tgz结合可以生成spark-$VERSION-bin-$NAME.tgz的部署包,默认NAME为hadoop的版本号

原文地址:https://www.cnblogs.com/luogankun/p/3798403.html