问题描述
我已经在我的系统中安装了 hadoop 2.2.我想用象鸟罐.运行mvn package"时出现以下错误.
I have installed hadoop 2.2 in my system. I want to use Elephant-Bird jar. Am getting following error while runnning "mvn package".
错误:
[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: Compilation failure:
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [9,39] error: package org.apache.commons.lang3.builder does not exist
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [10,31] error: package org.apache.thrift.scheme does not exist
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [11,31] error: package org.apache.thrift.scheme does not exist
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [12,31] error: package org.apache.thrift.scheme does not exist
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [14,31] error: package org.apache.thrift.scheme does not exist
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [15,33] error: cannot find symbol
[ERROR] package org.apache.thrift.protocol
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [20,0] error: package org.apache.thrift.server.AbstractNonblockingServer does not exist
[ERROR] /usr/lib/hadoop/elephant_bird/core/target/generated-sources/thrift/com/twitter/elephantbird/thrift/test/TestListInList.java: [42,43] error: cannot find symbol
我在 pom.xml 中添加了以下代码,但错误仍然存在.
I have added below code in pom.xml but still the error exist.
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.1</version>
</dependency>
我该如何解决这个错误?
How can i resolve this error ?
系统配置
Thrift version 0.9.1
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 19:21:28+0530)
Maven home: /usr/lib/mvn/apache-maven-3.0.5
Java version: 1.7.0_25, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-openjdk-amd64/jre
Default locale: en_IN, platform encoding: UTF-8
OS name: "linux", version: "3.5.0-43-generic", arch: "amd64", family: "unix"
Hadoop 2.2.0.2.0.6.0-76
推荐答案
通过从 http://archive.apache.org/dist/thrift/0.7.0/thrift-0.7.0.tar.gz.解压并进入解压后的文件夹.然后输入以下命令:
Changed Thrift from 0.9.1 to 0.7.0 by downloading from http://archive.apache.org/dist/thrift/0.7.0/thrift-0.7.0.tar.gz. Extract and go into the extracted folder. Then typed following commands :
- chmod +x ./configure
- ./configure
- 制作
- sudo make install
通过输入 thrift -version 检查 thrift 版本.这应该返回Thrift version 0.7.0"
Check thrift version by typing thrift -version. This should return "Thrift version 0.7.0"
然后转到elephant-bird文件夹并输入mvn -Dmaven.test.skip=true package"
Then go to elephant-bird folder and type "mvn -Dmaven.test.skip=true package"
注意:使用跳过测试是因为一些测试失败了.跳过测试选项解决了这个问题.
Note : skip test is used as some tests were failing. Skip test options solved the issue.
控制台输出:
[INFO] Building jar: /usr/lib/hadoop/elephant_bird/examples/target/elephant-bird-examples-4.4-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Elephant Bird ..................................... SUCCESS [2.043s]
[INFO] Elephant Bird Cascading2 .......................... SUCCESS [4.277s]
[INFO] Elephant Bird Core ................................ SUCCESS [16.622s]
[INFO] Elephant Bird Hadoop Compatibility ................ SUCCESS [0.106s]
[INFO] Elephant Bird Hive ................................ SUCCESS [0.462s]
[INFO] Elephant Bird Mahout .............................. SUCCESS [5.026s]
[INFO] Elephant Bird Pig ................................. SUCCESS [9.756s]
[INFO] Elephant Bird RCFile .............................. SUCCESS [3.745s]
[INFO] Elephant Bird Lucene .............................. SUCCESS [3.320s]
[INFO] Elephant Bird Pig Lucene .......................... SUCCESS [1.736s]
[INFO] Elephant Bird Examples ............................ SUCCESS [6.653s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 55.204s
[INFO] Finished at: Wed Jan 15 01:28:31 IST 2014
[INFO] Final Memory: 64M/386M
[INFO] ------------------------------------------------------------------------
Pig 在为 JsonLoader 编译加载语句时抛出错误,因为找不到 json-simple-1.1.1.jar.谷歌搜索罐子,你可以很容易地找到它.(由于少于 10 个声望,无法发布链接)
EDIT :Pig was throwing error while compiling load statement for JsonLoader as json-simple-1.1.1.jar was not found. Google for the jar, you can find it easily. ( Cannot post link due to less than 10 reputation)
并且在启动关于 hadoop-compat 的 pig 作业时抛出了一个错误.下载 http://repo1.maven.org/maven2/com/twitter/elephantbird/elephant-bird-hadoop-compat/4.4/elephant-bird-hadoop-compat-4.4.jar(也可以在 <elephant-bird-folder-path >/hadoop-compat/target/elephant-bird-hadoop-compat-4.4-SNAPSHOT.jar
and there was an error thrown while launching pig job regarding hadoop-compat. Download http://repo1.maven.org/maven2/com/twitter/elephantbird/elephant-bird-hadoop-compat/4.4/elephant-bird-hadoop-compat-4.4.jar(Also found in < elephant-bird-folder-path >/hadoop-compat/target/elephant-bird-hadoop-compat-4.4-SNAPSHOT.jar
)
注册 4 个 Jars 以在 Pig 中使用 Elephant-Bird 插件.
register 4 Jars to use Elephant-Bird plugin in Pig.
这篇关于Elephant-bird mvn 包错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!