一 问题
Hive报错java.lang.NoClassDefFoundError:org/codehaus/jackson/JsonFactory
二 原因
Hadoop版本是0.20.2.$HADOOP_HOME/lib中不包含
jackson-core-asl-1.8.8.jar
jackson-jaxrs-1.8.8.jar
jackson-mapper-asl-1.8.8.jar
jackson-xc-1.8.8.jar
这四个包。所以会报错
三解决方案
解决方法有2:
1.hive prompt里输入
hive> add jars $HIVE_HOME/lib/jackson-core-asl-1.8.8.jarjackson-jaxrs-1.8.8.jarjackson-mapper-asl-1.8.8.jarjackson-xc-1.8.8.jar
然后再执行select操作。
2.在集群各个节点上的hadoop的Lib包增加相关的4个jar包,并重启集群
本文介绍了解决Hive运行时出现java.lang.NoClassDefFoundError错误的方法。该错误通常由于缺少jackson系列jar包导致。文章提供了两种解决方案:一是通过hiveprompt添加缺失的jar包;二是将这些jar包部署到集群所有节点的Hadoop lib目录下并重启集群。

被折叠的 条评论
为什么被折叠?



