Exception in thread "main" java.lang.NoSuchMethodError: scala.Predef$.refArrayOps([Ljava/lang/Object...

本文详细解析了在使用Apache Spark进行大数据处理时遇到的Scala版本不匹配问题。具体表现为因Maven导入的Spark依赖与本地Scala SDK版本不一致导致的NoSuchMethodError错误。文章提供了将依赖的Scala SDK版本从2.12修改为2.11的解决方案,成功解决了问题。


Exception in thread "main" java.lang.NoSuchMethodError: scala.Predef$.refArrayOps([Ljava/lang/Object;)Lscala/collection/mutable/ArrayOps;
at org.apache.spark.util.Utils$.getCallSite(Utils.scala:1440)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:76)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:117)
at com.ajin.practice.WebsiteTopN$.main(WebsiteTopN.scala:19)
at com.ajin.practice.WebsiteTopN.main(WebsiteTopN.scala)

Process finished with exit code 1

原因Maven导入的spark依赖的是Scala2.11 而实际本地是2.12
<!-- 导入spark的依赖 -->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>${spark.version}</version>
</dependency>

修改依赖的scala sdk版本到2.11 解决问题

 

转载于:https://www.cnblogs.com/QuestionsZhang/p/10150074.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值