记一次yarn环境中应用程序jar冲突解决办法

当在Yarn上运行Spark程序时遇到jar包类或方法找不到的问题,通常是由于jar版本冲突导致。通过查看日志发现是gson库版本不一致引发的NoSuchMethodError。在尝试修改配置文件和命令行参数无效后,最终通过直接替换Yarn环境中的低版本gson jar为2.8.5版本解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用户编写的spark程序打包成jar后提交到yarn执行时,经常会遇到jar包中明显存在某个类,但任务提交到yarn运行时却找不到类或方法(java.lang.NoSuchMethodError)的问题。仔细看自己代码,明明有这个jar,那多半就是jar冲突了。

只有当jar的版本不一致时候才会冲突,那么本着治本精神去百度,可以找到如下文章

https://www.jianshu.com/p/0fe48bc43a8c

http://www.mamicode.com/info-detail-2338161.html

https://www.cnblogs.com/princessmeiyi/p/5238236.html

解决思路有三个1.修改hadoop配置文件  2.在提交任务时,命令行加参数  3.根据原理在代码里加片段

1,2两种方法在公司环境,行不通。3.水平有限,尝试写了,没用

所以不得不想想其他办法,那简单啊,版本不一致改为一致不就行了,过程如下

SpingBoot管理项目

</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值