启动hive报错:java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)V(已解决)

报错详情:

从报错信息来看:

一,java.lang.NoSuchMethodError

  原因:1.系统找不到相关jar包

                  2.同一类型的 jar 包有不同版本存在,系统无法决定使用哪一个

二,com.google.common.base.Preconditions.checkArgument

根据百度可知,该类来自于guava.jar

三,查看该jar包在hadoop和hive中的版本信息

  hadoop-3.2.1(路径:hadoop\share\hadoop\common\lib)中该jar包为  guava-27.0-jre.jar

   hive-2.3.6(路径:hive/lib)中该jar包为guava-14.0.1.jar

  

四,解决方案

删除hive中低版本的guava-14.0.1.jar包,将hadoop中的guava-27.0-jre.jar复制到hive的lib目录下即可。

五,成功运行hive

猜你喜欢

转载自www.cnblogs.com/mawangwang/p/11854762.html
今日推荐