编译Spark-1.6.3源码--Maven工具

来源:互联网 发布:要开淘宝网店怎么弄 编辑:程序博客网 时间:2024/06/05 20:01

编译环境

Cent OS 6.7

JDK1.8.0_101

Spark-1.6.3.tgz


写在前面:由于maven源在国外,笔者用国内镜像(阿里云)代替。


查看版本信息

下载Spark-1.6.3.tgz,解压后查看pom.xml,可以看到scala版本为2.10.5,zinc版本为0.3.5.3,Maven版本为3.3.3。

下载安装包

去官网下载scala-2.10.5.tgz、apache-maven-3.3.3.bin.tar.gz和zinc-0.3.5.3,然后传到spark-1.6.3/build目录下

安装Maven

前去官网下载Maven-3.3.3,然后解压到配置环境变量,最后修改配置文件中的镜像为阿里云。具体代码如下:

$sudo tar -zxvf apache-maven-3.3.3-bin.tar.gz -C /usr/local/$cd /usr/local$sudo mv ./apache-maven-3.3.3 ./maven3.3.3$vim ~/.bashrc
开头添加如下内容export MAVEN_HOME=/usr/local/maven3.3.3export PATH=$PATH:$MAVEN_HOME/bin
$source ~/.bashrc

配置Maven

修改maven/conf/settings.xml配置文件,将其中mirror改为aliyun-maven。

$cd /usr/local/maven3.3.3/conf/$vim ./settings.xml

settings.xml 文件里配置mirrors的子节点,添加如下mirror

<mirror>    <id>nexus-aliyun</id>    <mirrorOf>*</mirrorOf>    <name>Nexus aliyun</name>    <url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror>

配置pom.xml

配置spark-1.6.3/pom.xml文件,找到如下内容,替换之(-代表删除,+代表增加)

-      <url>https://repo1.maven.org/maven2</url>+      <!--<url>https://repo1.maven.org/maven2</url>-->+      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>

build/mvn

编译spark源码,进入spark-1.6.3目录(后文有加快编译速度)

$cd XXXX/spark-1.6.3/$./build/mvn -Pyarn -Phadoop-2.4 -Dhadoop.version=2.4.0 -DskipTests clean package

编译成功会出现:


这里写图片描述


出现错误或者不成功请Ctrl+c,重新编译。

提升编译速度

调整虚拟机配置为内存:4G

处理器:42core/个

然后编译命令:./build/mvn -T 8 -Pyarn -Phadoop-2.6 -Dhadoop.version=2.6.0 -DskipTests clean package

8个线程同时运行。当然你的电脑配置要高。笔者的配置为8G内存。

编译spark-2.1.0等其它内核版本也是如此。


导入IDEA,采用import project,maven方式。

设置本地运行和导入assembly/target/scala-2.11/jars

-Dspark.master=local

致谢:

Stan Zhai’s Blog:使用阿里云的Maven仓库加速Spark编译过程

官网编译步骤:Building Spark

搭建Spark源码研读和代码调试的开发环境

0 0
原创粉丝点击