试图在Windows上运行hadoop

时间:2014-08-25 13:26:59

标签: windows hadoop protocol-buffers

我正在尝试在我的机器上运行hadoop(Windows x64),但在构建源代码时出现此错误:

[ERROR] Failed to execute goal org.apache.hadoop:hadoop-maven-plugins:2.3.0:protoc (compile-protoc) on project hadoop-common: org.apache.maven.plugin.MojoExecutionExcepti
on: 'protoc --version' did not return a version -> [Help 1]

正如documentation中所建议并在BUILDING.txt中解释的那样,我在我的PATH vble protoc路径和我的Windows SDK中我可以称之为'protoc --version'没有问题:

C:\Users\hernanbl\Downloads\hadoop-2.3.0-src\hadoop-common-project>protoc --version
libprotoc 2.5.0

此外,版本与hadoop 2.3.0(我正在尝试构建的版本)中使用的版本相同。根据文档中的定义,我做了进一步的更改,例如声明平台vble等等。

我已经用Google搜索了问题,我发现我可能不是唯一一个遇到这个问题的人,但答案并没有给我解决这个问题的线索......

一些想法?谢谢!

2 个答案:

答案 0 :(得分:2)

我通过设置指向可执行文件的环境变量来解决它:

set HADOOP_PROTOC_PATH=C:\Path\To\protoc\protoc.exe

答案 1 :(得分:1)

我明白了......仍然是我根本不喜欢的解决方案!如果有人找到了更好的,请告诉我:

修改类ProtocMojo,硬编码protoc.exe的绝对路径:

protocCommand= "C:\\development\\tools\\protoc\\protobuf-2.5.0\\src\\protoc.exe";