Сборка hadoop продолжает терпеть неудачу, хотя в моей системе установлен протокол protoc 2.5.0.

Теперь я пытаюсь создать hadoop с помощью mvn после того, как завершил его предварительные требования. Однако я получаю это сообщение, хотя у меня правильная версия протокола protoc. Я уже несколько раз пытался пересобрать protoc 2.5.0, и каждый раз все тесты проходили и собирались успешно. Я не знаю, почему так происходит, пожалуйста, помогите. Спасибо.

[ОШИБКА] Не удалось выполнить цель org.apache.hadoop: hadoop-maven-plugins: 3.0.0-SNAPSHOT: protoc (compile-protoc) в проекте hadoop-common: org.apache.maven.plugin.MojoExecutionException: отказ протокола -> [Справка 1] [ОШИБКА] [ОШИБКА] Чтобы увидеть полную трассировку стека ошибок, повторно запустите Maven с ключом -e. [ОШИБКА] Перезапустите Maven, используя переключатель -X, чтобы включить полное ведение журнала отладки. [ERROR] [ERROR] Для получения дополнительной информации об ошибках и возможных решениях, пожалуйста, прочтите следующие статьи: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException [ОШИБКА] [ОШИБКА] После исправления проблем вы можете возобновить сборку с помощью команды [ОШИБКА ] mvn <goals> -rf :hadoop-common

TJ @ DESKTOP-6940Q5M / cygdrive / e / hdc $ protoc --version libprotoc 2.5.0

Спасибо за совет, который я пропустил, чтобы загрузить отображение при повторном запуске с ключом -e. Вот.

Я действительно не знаю, в чем его проблема, так как я начинаю с hadoop. Пожалуйста помоги.

Компилятор hadoop maven protobuf, к сожалению, бесполезен при возникновении ошибки.


person TaeJun Lee    schedule 03.02.2016    source источник
comment
Спасибо за ваш комментарий. Я снова отлаживал с ключом -e и получил результат, как я добавил в свой пост. Понятия не имею, в чем проблема. Пожалуйста помоги.   -  person facha    schedule 03.02.2016
comment
Не удалось выполнить цель org.apache.hadoop: hadoop-maven-plugins: 3.0.0-SNAPSHOT: protoc (compile-protoc) в проекте hadoop-common: org.apache.maven.plugin.MojoExecutionException: отказ протокола -> [Справка 1] org.apache.maven.lifecycle.LifecycleExecutionException: не удалось выполнить цель org.apache.hadoop: hadoop-maven-plugins: 3.0.0-SNAPSHOT: protoc (compile-protoc) в проекте hadoop-common: org.apache. maven.plugin.MojoExecutionException: сбой протокола в org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212) в org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExe153cutor) .java в org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:145) в org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:116) в orven.lifecycle.ma .internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:80) в org.apache.maven.lifecycle.internal.b uilder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:51) в org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) в org.apache.maven.DefaultMaven.doExecuteava (По умолчанию 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.Methodreflect.java.lang. 497) по адресу org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launche r.java:289) на org.codehaus.plexus.classworlds.launcher.Launcher.launch (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.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.Mojoception сбой в org.apache.hadoop.maven.plugin.protoc.ProtocMojo.execute (ProtocMojo.java:102) ... еще 22   -  person TaeJun Lee    schedule 04.02.2016


Ответы (2)


Это может быть просто какая-то ошибка в .protoc файлах, о которых не сообщается как таковых, вместо этого mvn просто не работает, не показывая основную причину.

Я заканчиваю отладку проблем компиляции с помощью инструмента командной строки protoc.

Кажется, нужно установить .protoc. Затем создайте плагины hadoop-maven. Вернитесь в родительский каталог исходного кода hadoop и выполните цель maven

person stevel    schedule 04.02.2016

Это сработало для меня.

cd <hadoop_source_path>
sudo yum install protobuf-compiler
cd hadoop-maven-plugins
mvn install
cd ..
mvn package -skipTests

Итак, какова настоящая ошибка? Кроме отказа протокола нет никаких значимых сообщений. Не могли бы вы попробовать запустить maven с этими переключателями -e и -X, чтобы получить дополнительную информацию?

person Suraj Nayak    schedule 25.02.2017