Eclipse中用maven导入hadoop源码
1) 安装并配置maven环境变量
M2_HOME: D:\profession\hadoop\apache-maven-3.3.3
PATH: %M2_HOME%\bin;
2) 验证:mvn –version
3) 下载protobuf-2.5.0.tar.gz 和 protoc-2.5.0-win32.zip
4) 将protoc-2.5.0-win32中的protoc.exe拷贝到c:\windows\system32中
5) 将protoc.exe文件拷贝到解压后的XXX\protobuf-2.5.0\src目录中
6) 进入XXX\protobuf-2.5.0\java 目录
执行【mvn package】命令编辑该包 生成protobuf-java-2.5.0.jar文件(位于target目录中)。
(注:有可能报一大堆error,可以删除文件,重新解压缩,重新执行【mvn package】命令就OK了)
输出信息:[INFO] BUILD SUCCESS
7) 验证:protoc –version
8) 配置protoc.exe的path路径,并重启计算机
9) 下载maven包hadoop-2.5.2-src.tar.gz
10) cmd进入hadoop-maven-plugins目录,
运行mvn install
输出信息:[INFO] BUILD SUCCESS
11) cmd进入hadoop-2.5.2-src目录,
运行mvn eclipse:eclipse –DskipTests
输出信息:[INFO] BUILD SUCCESS
12) eclipse,选择import maven projects,点击Browse… 选择hadoop源码根目录,导入各个项目
13) 一大锥报错,右键,maven,disabledependency management, enable dependency management,之后只剩余common包报错
14) project->buildautomacilly,取消maven自动编译同步
15) Q:Failed to execute goal org.apache.hadoop:hadoop-maven-plugins:2.5.2:protoc(compile-protoc) on project hadoop- common:org.apache.maven.plugin.MojoExecutionException: 'protoc --version' did notreturn a version
A:这个要分两种情况看,第一种情况可能是由于没有安装或者安装不成功protobuf程序导致的,第二种情况,已经成功安装了 protobuf程序,protoc -–version也成功的返回了版本号,但是还是报上述异常,这种情况一般是由于没有配置protoc的path路 径导致的
16)自从把hadoop版本选成了2.5.2版本之后就开始悲剧了,网上可供借鉴的资料聊聊无几,全靠自己摸索,所以大家以后选择版本的时候还是选择成熟大众的版本比较容易些