1. 安装maven
下载 : apache-maven-3.2.5-bin.zip
配置环境变量 :
MAVEN_HOME=~/software/apache-maven/apache-maven-3.2.5
Path=%MAVEN_HOME%\bin
验证是否成功:
mvn -version
2. 安装protoc
google protobuf是一个灵活的、高效的用于序列化数据的协议。相比较XML和JSON格式,protobuf更小、更快、更便捷。google protobuf是跨语言的,并且自带了一个编译器(protoc),只需要用它进行编译,可以编译成Java、python、C++、C#、Go等代码,然后就可以直接使用,不需要再写其他代码,自带有解析的代码。
下载 protobuf-2.5.0.tar.gz 地址:
用maven编译hadoop源码,一定要安装protoc, 而且需要protobuf-2.5.0版本,否则会编译不通过。
使用命令: sudo apt install protobuf-compiler
这种方法安装的不是protobuf-2.5.0版本
安装命令:
tar zxvf protobuf-2.5.0.tar.gz |
cd protobuf-2.5.0 |
./configure --prefix=/usr/local/bin/protoc/ |
make make check |
sudo make install sudo ldconfig |
配置环境变量: vim /etc/profile,添加
PROTOC_HOME=/usr/local/bin/protoc
export PATH="$PATH:/usr/local/bin/protoc/bin/:/usr/local/bin/protoc/lib/pkgconfig/:”
保存执行,source /etc/profile。同时在~/.profile中添加上面两行代码,否则会出现登录用户找不到protoc命令
这样就安装好了,验证一下: protoc --version
出现: libprotoc 2.5.0
解释命令:
1) ./configure: 用来生成 Makefile。用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或 GCC,它是个shell脚本。./configure --prefix=/usr/local/bin/protoc/ 意思是将该软件安装在/usr/local/bin/protoc/下
2) make: 用来编译的,它从Makefile中读取指令,然后编译。
3) make install: 用来安装的,它也从Makefile中读取指令,安装到指定的位置。当然有些软件需要先运行 make check 或 make test 来进行一些测试),这一步一般需要你有 root 权限(因为要向系统写入文件)。
4) sudo ldconfig : # refresh shared library cache. 共享库路径
3. maven下载Hadoop源码
获取hadoop的源码: 首先通过官网下载hadoop-2.7.3.tar.gz的软件包,并解压。
进入目录: cd /home/hadoop/software/hadoop-2.7.4-src/
hadoop@Master:~/software/hadoop-2.7.4-src$ mvn eclipse:eclipse -DskipTests
依然在此目录下, 压缩获得的源码: zip -r hadoop_274_src.zip ./*
4. Eclipse关联Hadoop的源码
得到 hadoop_274_src.zip ,就可以关联源码了。