[root@hadoop03 bin]# hive
ls: 无法访问/home/software/spark-2.0.1-bin-hadoop2.7/lib/spark-assembly-*.jar: 没有那个文件或目录
原因是:
spark升级到spark2以后,原有lib目录下的大JAR包被分散成多个小JAR包,原来的spark-assembly-*.jar已经不存在,所以hive没有办法找到这个JAR包。
解决办法是:修改bin目录下的hive文件
[root@hadoop03 bin]# vim hive
找到以下内容:
# add Spark assembly jar to the classpath
if [[ -n "$SPARK_HOME" ]]
then
sparkAssemblyPath=`ls ${SPARK_HOME}/lib/spark-assembly-*.jar`
CLASSPATH="${CLASSPATH}:${sparkAssemblyPath}"
fi
将标红处 修改为:sparkAssemblyPath=`ls ${SPARK_HOME}/jars/*.jar`
保存,问题解决。