hive启动报错(整合spark)

spark整合hive后,hive启动报错:

ls: cannot access /export/servers/spark/lib/spark-assembly-*.jar: No such file or directory

原因:spark版本升级到2.x以后,原有lib目录下的大JAR包被分散成多个小JAR包,原来的spark-assembly-*.jar已经不存在,所以hive没有办法找到这个JAR包。

解决方法:打开hive下面的bin目录,找到hive文件,编辑hive文件,找到如下一行:

sparkAssemblyPath=`ls ${SPARK_HOME}/lib/spark-assembly-*.jar`

修改为如下一行:

sparkAssemblyPath=`ls ${SPARK_HOME}/jars/*.jar`

发现还是报相同的错误,于是执行which hive,发现在/usr/bin/下,还有一个hive命令,vim /usr/bin/hive,发现里面是执行/usr/lib/hive/bin/hive的shell文件,

于是, vim /usr/lib/hive/bin/hive,将里面的sparkAssemblyPath也改掉,错误解决。

注:以上步骤不用重启hive。

然后和hive交互时,执行bin/hive 命令时:报错:

SemanticException org.apache.hadoop.hive.ql.metadata.HiveException

解决方法:重装hive

上一篇:Asp.net MVC5引用ExtJS6


下一篇:salt执行报错一例