【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法



1、问题描述

       自从spark2.0.0发布之后,每次启动hive的时候,总会发现一个小问题,启动 hive --service metastore的时候,会报一个小BUG: 无法访问/lib/spark-assembly-*.jar

【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法_第1张图片

分析其源码架构,发现主要原因是:在//bin/hive文件中,有这样的命令:加载spark中相关的JAR包。

 【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法_第2张图片

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


2、解决方法:

      修改//bin/hive文件,将加载原来的lib/spark-assembly-*.jar`替换成jars/*.jar,就不会出现这样的问题。

 【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法_第3张图片


3、最后验证下:

【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法_第4张图片


你可能感兴趣的:(Spark)