和hadoop 2.2 有些差别
1. 只能使用jdk 1.7 (jdk1.8 编译提示错误)
2. 先执行 hadoop-2.3.0-cdh5.1.0\cloudera\apply-patches ../src ./patches 将cloudera的修改合入hadoop 2.3的代码
3. 修改 hadoop-2.3.0-cdh5.1.0\src\hadoop-common-project\hadoop-common\pom.xml 文件,屏蔽native库的编译(不要想修改了,看了代码,里面没有mmap的windows实现,直接注释掉,编译的目的是出jar包,好在windows平台远程调试)
<profiles>
<!--
<profile>
-->
<profile>
<id>parallel-tests</id>
<build>
4.进入src目录,执行mvn package -DskipTests -Pdist (hadoop-dist回抱错,不用理,jar都出来了)
5. mvn org.apache.maven.plugins:maven-eclipse-plugin:2.6:eclipse
另外,因cloudera的repo很慢,可能mvn的repo包下载失败,大小为1KB,编译时提示zip失败,请删除目录,反复重新编译