【问题排查】hadoop-shaded-guava依赖问题

hadoop-shaded-guava依赖问题

报错信息如下:

shell 复制代码
java.lang.NoClassDefFoundError: org/apache/hadoop/thirdpart/com/goole/common/base/Preconditions
at org.apache.hadoop.fs.aliyun.oss.AliyunOssUtils.loginOPtion(AliyunOssUtils.java 221)

从日志可以看出是因为缺失某个依赖导致。

我先说说我的排查方向,比较笨重

  1. 通过IDEA全局搜索这个类,发现没有这个类
  2. 最开始看到这个报错以为是guava包冲突了,就在pom.xml文件里面排除guava包,打包后发现还是不行,妥协了根据报错信息慢慢找
  3. 从报错的代码位置进行排查(发现AliyunOssUtils类import了org/apache/hadoop/thirdpart/com/goole/common/base/Preconditions这个类),

因为代码逻辑是利用spark读取S3文件用到了hadoop-aliyun的依赖,而adoop-aliyun依赖在AliyunOssUtils类中import了org/apache/hadoop/thirdpart/com/goole/common/base/Preconditions类,hadoop原生的依赖包并不会提供该依赖的支持所以在spark-submit时报错。知道问题就比较好解决了。

如果不了解 hadoop-shaded-guava 这个jar,可以去maven仓库下载,具体地址:https://mvnrepository.com/

搜索hadoop-shaded-guava

选择具体版本即可

找到对应版本引入导pom.xml文件即可。

xml 复制代码
<dependency>
    <groupId>org.apache.hadoop.thirdparty</groupId>
    <artifactId>hadoop-shaded-guava</artifactId>
    <version>1.3.0</version>
</dependency>
相关推荐
taocarts_bidfans4 分钟前
反向海淘独立站搭建与全链路技术落地实战
大数据·跨境电商·独立站·反向海淘·taoify
EasyDSS40 分钟前
私有化视频会议平台/智能会议管理系统EasyDSS以技术创新重构政务会议新体验
大数据·重构·政务
humors2211 小时前
突破学习瓶颈:十个需要克服的障碍
大数据·学习·程序人生
试剂界的爱马仕1 小时前
《古董局·终局5:潮生》第 2 章:镜子的天赋
大数据·人工智能·算法
Rocktech_ruixun2 小时前
从场景落地到技术迭代:服务机器人迈入规模化商用爆发期
大数据·人工智能
商业模式源码开发2 小时前
城市酷选排队免单模式深度拆解:从1.0到6.0的演进逻辑与行业启示
大数据·流量运营·私域流量
爱怪笑的小杰杰2 小时前
Leaflet 高性能大数据量图圆:彻底解决缩放/拖拽偏移问题
大数据·前端·vue.js·贴图
WL_Aurora2 小时前
大数据技术之SparkCore
大数据·前端·spark·rdd
JAVA学习通2 小时前
《大营销平台系统设计实现》 - 营销服务 第6节:抽奖中置规则过滤
大数据
工业机器人销售服务2 小时前
不锈钢制品美容焊手:法奥机器人施焊成型焊缝色泽均匀,防腐性能与母材保持一致
大数据·人工智能