hadoop源码编译
1、jdk安装
创建/usr/java目录
#mkdir /usr/java
上传jdk文件到/usr/java目录
#rz
解压
#tar -xzvf jdk-8u45-linux-x64.gz -C /usr/java
设置环境变量
#vi /etc/profile
文件末尾添加:export JAVA_HOME=/usr/java/jdk1.8.0_45
export PATH=$JAVA_HOME/bin:$PATH,保存退出
#source /etc/profile
测试
# java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
2、Maven安装
说明
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。可以自动管理jar包依赖,且编译、发布。
解压到/opt/software
#unzip apache-maven-3.3.9-bin.zip
配置环境变量
#vi /etc/profile
export MAVEN_HOME=/opt/software/apache-maven-3.3.9
export MAVEN_OPTS="-Xms256m -Xmx512m"
export PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH
测试
#mvn --version
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /opt/software/apache-maven-3.3.9
Java version: 1.8.0_45, vendor: Oracle Corporation
Java home: /usr/java/jdk1.8.0_45/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-642.el6.x86_64", arch: "amd64", family: "unix"
仓库配置(因为受限于Maven下载jar包的速度太慢,所以提前备份了仓库,直接导入即可)
#cd ~ //Maven默认的仓库路径是家目录下.m2/repository,所以在家目录解压即可
#tar -zxvf.m2.tar.gz
3、Protobuf安装
说明
Google Protocol Buffer(简称 Protobuf)是一种轻便高效的结构化数据存储格式,平台无关、语言无关、可扩展,可用于通讯协议和数据存储等领域。
解压
#tar -zxvf protobuf-2.5.0.tar.gz -C /opt/software
安装依赖
#yum install -y gcc gcc-c++ make cmake
#./configure --prefix=/usr/local/protobuf //指定编译的结果存放路径,环境变量的配置就是这个路径
#make && make install
环境变量配置
#vi /etc/profile
export PROTOC_HOME=/usr/local/protobuf
export PATH=$PROTOC_HOME/bin:$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH
#source /etc/profile
测试
#protoc --version
4、Findbugs安装
说明
FindBugs 是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析
解压
#unzip findbugs-1.3.9.zip
配置环境变量
#vi /etc/profile
export FINDBUGS_HOME=/opt/software/findbugs-1.3.9
export PATH=$FINDBUGS_HOME/bin:$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH
#source /etc/profile
测试
#findbugs -version
5、其他依赖安装
#yum install -y openssl openssl-devel svn ncurses-devel zlib-devel libtool
#yum install -y snappy snappy-devel bzip2 bzip2-devel lzo lzo-devel lzop autoconf automake
6、编译hadoop源码
#cd /opt/sourcecode/
#tar -xzvf hadoop-2.8.1-src.tar.gz
#cd hadoop-2.8.1-src
#mvn clean package -Pdist,native -DskipTests -Dtar
7、查看编译结果
出现以下结果为编译成功,具体路径为:/opt/sourcecode/hadoop-2.8.1-src/hadoop-dist/target/hadoop-2.8.1.tar.gz