一.准备工作
1.hadoop源码下载
https://archive.apache.org/dist/hadoop/common/
本文使用的hadoop版为2.9.2
2.安装JDK
3.安装mvn
4.安装Protocal Buffers
https://github.com/protocolbuffers/protobuf/releases/tag/v2.5.0
下载
解压protoc-2.5.0-win32.zip到指定目录,例如:E:protoc-2.5.0-win32,将该路径配置到PATH系统变量中。
执行protoc --version验证变量是否配置成功,如图:
二.创建源码工程
1.安装插件
在安装插件之前可以修改下载源仓库,提高下载速度,具体做法如下:
找到apache-maven-x.x.x/conf/settings.xml配置文件,将如下镜像
<mirror> <id>nexus-aliyun</id> <mirrorOf>*</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
加入到<mirrors></mirrors>中。这一步是选择性的,可以不修改。
(2)进入..hadoop-2.9.2-srchadoop-maven-plugins目录,执行
mvn install
安装hadoop-maven-plugins插件,成功后,如图:
3.生成eclipse工程文件
再回到..hadoop-2.9.2-src目录,执行
mvn eclipse:eclipse -DskipTests
生成eclipse工程文件,成功如图:
二.问题解决
编译hadoop amazon webservice时遇到缺少依赖包:DynamoDBLocal-1.11.86.jar。编译不通过,这时需要下载amazon提供的dynamodb_local_latest.tar.gz,解压之后,将其中的DynamoDBLocal-1.11.86.jar包拷贝到/mavenspace/目录下的/com/amazonaws/DynamoDBLocal/1.11.86目录下,并命名为DynamoDBLocal-1.11.86.jar。接着编译就可以成功。