ERROR 2997: Unable to recreate exception from backed error

来源:互联网 发布:以大数据为主题的论文 编辑:程序博客网 时间:2024/05/22 03:06

当我们在Hadoop2中使用第三方Jar包来跑MR(使用Pig)时,会抛出以下异常:

ERROR 2997: Unable to recreate exception from backed error: 

Error: com.google.common.collect.Range.closed(Ljava/lang/Comparable;Ljava/lang/Comparable;)

Lcom/google/common/collect/Range;

但是我们在Pig脚本中把Jar包(guava-16.0.1.jar)已经注册了,那么为什么还会报这种错误呢?

这个错误很显然是没有使用最新的版本而找的还是老版本的Jar(以上报错的这个类是guava 1.5以后才出现的),果断看了CLASSPATH,发现果然在CLASSPATH中使用了guava,但是版本较老guava-11.0.2.jar。所以要解决该问题就需要让执行MR时优先找用户的CLASSPATH。

于是在mapred-site.xml中加入

<property>
  <name>mapreduce.job.user.classpath.first</name>
  <value>true</value>
</property>

重启ResourceManager

问题解决。

0 0
原创粉丝点击