0

Pig で使用できるように、Twitter のエレファント バード パッケージをビルドしようとしていますが、エラーが発生します。

[INFO] Elephant Bird ..................................... SUCCESS [0.638s]
[INFO] Elephant Bird Hadoop Compatibility ................ SUCCESS [1.213s]
[INFO] Elephant Bird Core ................................ FAILURE [0.580s]
[INFO] Elephant Bird Cascading2 .......................... SKIPPED
[INFO] Elephant Bird Hive ................................ SKIPPED
[INFO] Elephant Bird Pig ................................. SKIPPED
[INFO] Elephant Bird Mahout .............................. SKIPPED
[INFO] Elephant Bird RCFile .............................. SKIPPED
[INFO] Elephant Bird Lucene .............................. SKIPPED
[INFO] Elephant Bird Pig Lucene .......................... SKIPPED
[INFO] Elephant Bird Examples ............................ SKIPPED

[ERROR] Failed to execute goal com.github.igor-petruk.protobuf:protobuf-maven-plugin:0.4:run (default) on project elephant-bird-core: Protobuf installation version does not match Protobuf library version -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR] 
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :elephant-bird-core

私のシステムのMaven情報は次のとおりです。

Apache Maven 3.0.3 (r1075438; 2011-02-28 09:31:09-0800)
Maven home: /usr/share/maven
Java version: 1.7.0_45, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.8.3", arch: "x86_64", family: "mac"

Thrift と protobuf は既にインストールしています。

EDIT Jigar からのアドバイスに従って、protobuf のバージョンに関係する最初のビルド エラーを修正しました。エラーの原因となっていた pom ファイルの Thrift のバージョン番号も更新しました。しかし、私はまだ次のエラーが発生しています:

[INFO] Elephant Bird ..................................... SUCCESS [0.647s]
[INFO] Elephant Bird Hadoop Compatibility ................ SUCCESS [1.157s]
[INFO] Elephant Bird Core ................................ FAILURE [7.434s]
[INFO] Elephant Bird Cascading2 .......................... SKIPPED
[INFO] Elephant Bird Hive ................................ SKIPPED
[INFO] Elephant Bird Pig ................................. SKIPPED
[INFO] Elephant Bird Mahout .............................. SKIPPED
[INFO] Elephant Bird RCFile .............................. SKIPPED
[INFO] Elephant Bird Lucene .............................. SKIPPED
[INFO] Elephant Bird Pig Lucene .......................... SKIPPED
[INFO] Elephant Bird Examples ............................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.987s
[INFO] Finished at: Mon Oct 21 14:25:09 PDT 2013
[INFO] Final Memory: 20M/369M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project elephant-bird-core: Compilation failure
[ERROR] /Users/evanzamir/Pig/pig-jars/elephant-bird/core/src/main/java/org/apache/thrift/Fixtures.java:[118,69] error: cannot find symbol
[ERROR] -> [Help 1]
4

2 に答える 2

0

エラーメッセージが示すように:

Protobuf インストール バージョンが Protobuf ライブラリ バージョンと一致しません

間違ったバージョンのプロトコル バッファを使用しています。@jigar-joshi は、適切なバージョンに変更する方法を示すポインタを投稿しました。

編集: 以下は、ユーザーから報告された新しいエラーに回答します。

エラー メッセージを読んで理解しようとすることが重要です。たとえば、これは次のように述べています。

/Users/evanzamir/Pig/pig-jars/elephant-bird/core/src/main/java/org/apache/thrift/Fixtures.java:[118,69] エラー: シンボルが見つかりません

つまり、ファイルFixtures.javaの 118 行目 (69 文字目) に、以前に定義されていない (または適切にインポート/適切に修飾されていない) シンボル (変数やメソッド名など) があることを意味します。

于 2013-10-21T21:05:21.980 に答える
0

私は同じ問題を抱えていて、回避策を見つけました。protobuf 2.4.1 と thrift 0.7.0 をインストールする必要があります。従うべき手順(古いバージョンのインストール方法)を含むプレゼンテーションを作成しました。これが役立つことを願っています

http://www.slideshare.net/kapildewade/elephant-bird-build-error

于 2013-11-02T20:21:53.560 に答える