2012-11-20 84 views
1

我下載ElephantBird源,並試圖通過運行「MVN套裝」建設,但我收到以下錯誤:我使用MVN版本3.0.3ElephantBird包構建失敗:

[ERROR] Failed to execute goal com.github.igor-petruk.protobuf:protobuf-maven-plugin:0.4:run (default) on project elephant-bird-core: Unable to find 'protoc' -> [Help 1] 

,我在嘗試Mac和Ubuntu,但我得到了同樣的錯誤。

EDIT1:

感謝羅蘭的言論,我通過升級協議緩存解決了上述問題。我也裝節儉0.7.0,但現在我有象豬生成過程中的另一個編譯失敗:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:testCompile (default-testCompile) on project elephant-bird-pig: Compilation failure: Compilation failure: [ERROR] /root/elephant-bird/pig/src/test/java/com/twitter/elephantbird/pig/util/TestThriftNameWritableConverter.java:[12,26] invalid inferred types for W; inferred type does not conform to declared bound(s) 
+0

看起來錯誤是由於單元測試代碼中的一些Java通用代碼語法造成的。 – kee

回答

2

確保您以前安裝Protocol Buffers(apt-get的安裝protobuf的編譯器)和Thrift。您還必須設置Thrift在Elephant-bird的pom.xml中的位置。

參見:https://stackoverflow.com/a/12301954

+0

謝謝。現在我收到了一條不同的錯誤消息:[0]插件'protobuf-maven-plugin'的定義中指定了以下內容: ... VALUE - 或 - 在命令行上,指定:'-DinputDirectories = VALUE' – kee

+0

此錯誤是否由協議緩衝區版本差異引起? pom.xml說2.3.0,但我安裝的版本是2.2.0 – kee

+0

我安裝了v2.3並沒有這樣的問題。試着這樣做,看看它是否有幫助 –

0

使用的Java JDK 7修復了Java編譯錯誤。

+0

我沒有任何計劃很快重溫這個包,但下次我肯定會嘗試。 – kee