在完成hadoop的先决条件之后,我正在尝试使用mvn构建hadoop。然而,我得到这个信息,即使我有正确的protoc版本。我已经多次尝试重新构建protoc2.5.0,每次它的所有测试都会通过并成功构建。我不知道为什么会这样,请帮帮我。谢谢。
[错误]无法执行goal org.apache。hadoop:hadoop-maven-plugins:3.0.0-snapshot:protoc (编译protoc)关于hadoop common项目: org.apache.maven.plugin.MojoExecutionException
:protoc failure->[help 1][error][error]要查看错误的完整堆栈跟踪,请使用-e开关重新运行maven[错误]使用-x开关重新运行maven以启用完全调试日志记录[错误][错误]有关错误和可能的解决方案的详细信息,请阅读以下文章:[错误][帮助1]http://cwiki.apache.org/confluence/display/maven/mojoexecutionexception [error][error]更正问题后,可以使用命令[error]继续生成 mvn <goals> -rf :hadoop-common
tj@desktop-6940q5m /cygdrive/e/hdc美元 protoc --version
libprotoc 2.5.0版本
感谢您的建议,我错过了上传显示上重新运行与-e开关。给你。
未能执行goal org.apache。hadoop:hadoop-maven-plugins:3.0.0-snapshot:protoc (编译protoc)在项目hadoop上:org.apache.maven.plugin.mojoexecutionexception:protoc failure->[help 1]org.apache.maven.lifecycle.lifecycleexecutionexception:failed to execute goal org.apache。hadoop:hadoop-maven-plugins:3.0.0-snapshot:protoc (编译protoc)在hadoop项目上:org.apache.maven.plugin.mojoexecutionexception:org.apache.maven.lifecycle.internal.mojoexecutor.execute(mojoexecutor)的protoc失败。java:212)位于org.apache.maven.lifecycle.internal.mojoexecutor.execute(mojoexecutor。java:153)在org.apache.maven.lifecycle.internal.mojoexecutor.execute(mojoexecutor。java:145)位于org.apache.maven.lifecycle.internal.lifecyclemodulebuilder.buildproject(lifecyclemodulebuilder)。java:116)位于org.apache.maven.lifecycle.internal.lifecyclemodulebuilder.buildproject(lifecyclemodulebuilder)。java:80)在org.apache.maven.lifecycle.internal.builder.singlethreaded.singlethreadedbuilder.build(singlethreadedbuilder)。java:51)在org.apache.maven.lifecycle.internal.lifecyclestarter.execute(lifecyclestarter。java:128)在org.apache.maven.defaultmaven.doexecute(defaultmaven。java:307)在org.apache.maven.defaultmaven.doexecute(defaultmaven。java:193)在org.apache.maven.defaultmaven.execute(defaultmaven。java:106)在org.apache.maven.cli.mavencli.execute(mavencli。java:863)在org.apache.maven.cli.mavencli.domain(mavencli。java:288)在org.apache.maven.cli.mavencli.main(mavencli。java:199)位于sun.reflect.nativemethodaccessorimpl.invoke0(本机方法)sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl。java:62)在sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl。java:43)在java.lang.reflect.method.invoke(方法。java:497)在org.codehaus.plexus.classworlds.launcher.launcher.launchenhanced(launcher。java:289)在org.codehaus.plexus.classworlds.launcher.launcher.launcher(launcher。java:229)在org.codehaus.plexus.classworlds.launcher.launcher.mainwithexitcode(launcher。java:415)在org.codehaus.plexus.classworlds.launcher.launcher.main(launcher。java:356)原因:org.apache.maven.plugin.mojoexecutionexception:org.apache.maven.plugin.mojoexecutionexception:org.apache.hadoop.maven.plugin.protoc.protocmojo.execute(protocmojo)上的protoc失败。java:105)在org.apache.maven.plugin.defaultbuildpluginmanager.executemojo(defaultbuildpluginmanager。java:134)位于org.apache.maven.lifecycle.internal.mojoexecutor.execute(mojoexecutor。java:207) ... 另外20个原因是:org.apache.maven.plugin.mojoexecutionexception:org.apache.hadoop.maven.plugin.protoc.protocmojo.execute(protocmojo)的protoc失败。java:102) ... 22个以上
我真的不知道它的问题是什么,因为我是hadoop的初学者。请帮忙。
2条答案
按热度按时间tquggr8v1#
似乎你需要安装
protobuf-compiler
. 然后构建hadoopmaven插件。返回hadoop源代码父目录并执行maven目标这对我有用。
wfveoks02#
不幸的是,hadoopmaven protobuf编译器在出现错误时毫无用处。
这可能只是一个错误
.protoc
文件没有被这样报告,相反,mvn只是失败了,没有显示根本原因。最后,我使用protoc命令行工具调试编译问题。