【大数据】hive启动出错:NoClassDefFoundError: org/apache/hadoop/hive/ql/CommandNeedRetryException

一、背景

   在启动了hdfs和yarn和hbase和zookeeper的情况下,启动hive。启动失败,出现错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hive/ql/CommandNeedRetryException
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at org.apache.hadoop.util.RunJar.run(RunJar.java:227)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:148)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.ql.CommandNeedRetryException
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 4 more

参考文章:https://blog.csdn.net/lsxy117/article/details/47703155?utm_source=blogxgwz6

发现是hadoop-env.sh中的【HADOOP_CLASSPATH】的问题,进入【/opt/module/hadoop-2.8.4/etc/hadoop/】,我的hadoop-env.sh的【HADOOP_CLASSPATH】是:

   export HADOOP_CLASSPATH=/opt/module/hbase-1.3.1/lib/*

二、解决

根据上面的文章,要将其改为

export HADOOP_CLASSPATH=.:$CLASSPATH:$HADOOP_CLASSPATH:$HADOOP_HOME/bin

不过我的原来的还有用,所以最终改为了:

export HADOOP_CLASSPATH=.:$CLASSPATH:$HADOOP_CLASSPATH:$HADOOP_HOME/bin:/opt/module/hbase-1.3.1/lib/*

重启集群,成功

你可能感兴趣的:(大数据)