一、安装jdk7
在网上下载jdk7的包
解压缩jdk7的包
修改环境变量:
nano /etc/profile
在最后加上
#set java environment
export JAVA_HOME=解压目录
export JRE_HOME= ${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile
配置默认JDK:
update-alternatives --install /usr/bin/java java 目录/bin/java 300
update-alternatives --install /usr/bin/javac javac 目录/bin/javac 300
update-alternatives --install /usr/bin/javah javah 目录/bin/javah 300
update-alternatives --install /usr/bin/jar jar 目录/bin/jar 300
切换默认JDK:
update-alternatives --config java
update-alternatives --config javac
最后测试:
java -version
javac -version
二、安装maven
apt-get install maven
mvn --version
三、安装依赖库
apt-get install g++ autoconf automake libtool cmake zlib1g-dev pkg-config libssl-dev
四、安装openssh
apt-get install openssh-server
五、安装protoc
这里不能apt-get安装,因为安装的是2.6.1版本,而编译要求为2.5.0版本,所以只能从网上下载手动安装,下载地址:
http://f.dataguru.cn/forum.php?mod=attachment&aid=MTU2ODgzfDdmYzYxM2YzfDE0NTAxMDMwMzJ8MHw0NTI5OTE%3D
解压后进入目录
./configure --prefix=/usr/protobuf/
make && make install
之后/etc/profile中加入export PATH=/usr/protobuf/bin:$PATH
protoc --version 显示为2.5.0则成功
六、开始编译:
注意:开始编译前最好先设置maven的镜像地址,因为原地址真的太。。。
nano /etc/share/maven/conf/settings.xml
在<mirrors></mirrors>中加入
<mirror>
<id>UK</id>
<name>UK central</name>
<url>http://uk.maven.org/maven2/</url>
<mirrorOf>central</mirrorOf>
</mirror>
感觉这个镜像还比较靠谱。。。
注意:编译中可能会出现"java.lang.OutOfMemoryError: Java heap space"错误,这错误编译是给JVM分配的Xmx不够,但是在Maven中直接在mvn命令行后指定-Xmx1024m是不起作用的,需要在编译前设置Maven环境参数:
export MAVEN_OPTS='-Xms256m -Xmx1024m'
之后可以开始编译,进入hadoop源码目录hadoop-2.7.1-src
mvn clean
mvn package -Pdist,native -DskipTests=true -Dtar
之后等待编译完成