1 下载源码
前往官网下载源码压缩包
2.先期准备工作
解压源码包,可以查看BUILD.txt ,需要安全maven ,protobuf
2.1 protobuf的安装
下载
protobuf-2.5.0.tar.gz和protoc-2.5.0-win32.tar,
将两者进行解压,然后将protoc-2.5.0-win32.tar中的protoc.exe分别复制到C:/Windows/System32 和 protobuf-2.5.0/src目录下,然后打开cmd,进入到protobuf-2.5.0/Java目录下,执行命令
mvn package
成功后会提示build success,此外注意JDK版本至少为1.7
2.2 hadoop
将hadoop-2.6.0-src.tar.gz放到一个盘的根目录下,如果放的太深无法进行解压
打开cmd,进入到hadoop-2.6.0-src文件夹,进入到hadoo-maven-plugins,然后输入
mvn install
进行maven插件的编入,然后回到hadoop-2.6.0-src根目录,然后进行源码的编译:
mvn eclipse:eclipse –DskipTests
然后就会生成hadoop-2.6.0-src源码
3. 导入eclipse或myeclipse
打开eclipse中,然后import,然后选中hadoop-2.6.0-src文件
错误情况:
- maven下载pom失败->重新操作
- hadoop-streaming中build path错误->Java Build Path->Source:
- 删除...hadoop-yarn-server-resourcemanager/conf
- Link Source:源码根目录/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/conf,再随便起个名字;inclusion patterns:capacity-scheduler.xml;exclusion patters:**/*.java
- org.apache.hadoop.io.serializer.avro.TestAvroSerialization
- 下载avro-tools-1.7.4.jar:http://archive.apache.org/dist/avro/avro-1.7.4/java/
- 进入目录:源码根目录\hadoop-common-project\hadoop-common\src\test\avro
- java -jar path/to/avro-tools-1.7.4.jar compile schema avroRecord.avsc ..\java
- eclipse 刷新
- org.apache.hadoop.ipc.protobuf.TestProtos
- 进入目录:源码根目录\hadoop-common-project\hadoop-common\src\test\proto
- protoc --java_out=../java *.proto
- eclipse 刷新
- project->clean..->clean all projects & Build the entire workspace