maven 编译 spark1.0.0

spark 官方有编译好的代码,但是,本着学习的目的,自己想用maven编译一下

首先,下载源码:

wget http://d3kbcqa49mib13.cloudfront.net/spark-1.0.0.tgz
tar -zxf spark-1.0.0.tgz
cd spark-1.0.0

编译:

由于spark 依赖的hadoop版本默认是1.0.4,我们平时用的是hadoop2.2.0的,所以,需要指定一下hadoop的版本,看一下pom中的相关配置


<properties>
……
<hadoop.version>1.0.4</hadoop.version>
<protobuf.version>2.4.1</protobuf.version>
<yarn.version>${hadoop.version}</yarn.version>
……
</properties>

    <profile>
      <id>hadoop-2.2</id>
      <properties>
        <protobuf.version>2.5.0</protobuf.version>
      </properties>
    </profile>


properties中依赖的组件的版本都可以通过  mvn -D 参数指定,比如 -Dhadoop.version=2.2.0

hadoop2.2.0 的<profile> 中 protobuf 依赖的是2.5.0 的,所以, 在<properties>中的protobuf就不需要指定了

具体的编译命令:

sudo mvn -DskipTests -Dhadoop.version=2.2.0 clean package

如果需要调整mvn的内存大小,可以进行如下操作,具体大小可以根据自己的环境配置:

export MAVEN_OPTS="-Xmx2g -Xms2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"

没想到,编译还挺顺利。以后还要多学习!


你可能感兴趣的:(maven 编译 spark1.0.0)