idea运行报错,原因是spark与scala版本不对应(实践)

idea运行报错,原因是spark与scala版本不对应

如果对版本匹配有疑问可以先看:版本理论问题可以参考

版本匹配理论原因

实践请看这篇文章

Exception in thread "main" java.lang.VerifyError: class scala.collection.mutable.WrappedArray overrides final method toBuffer.()Lscala/collection/mutable/Buffer;
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at org.apache.spark.SparkConf.loadFromSystemProperties(SparkConf.scala:73)
    at org.apache.spark.SparkConf.<init>(SparkConf.scala:68)
    at org.apache.spark.SparkConf.<init>(SparkConf.scala:55)
    at sql.practice.Spark01_SparkSQL_Basic$.main(Spark01_SparkSQL_Basic.scala:10)
    at sql.practice.Spark01_SparkSQL_Basic.main(Spark01_SparkSQL_Basic.scala)

hadoop版本3.2.0

cmd中scala 版本 2.13.6

spark版本 3.1.3(这里spark使用的是scala2.12.10

 去spark官网查看有下图:请注意,Spark 3通常是使用Scala 2.12预构建的,Spark 3.2+使用Scala 2.13提供了额外的预构建发行版。

所以存在版本不一致问题,我选择重新安装scala-2.12,scala安装参考

这里的版本要求:spark3.2+要用scala2.13;  spark3其他系列是scala2.12

安装好scala之后的版本如下:

卸载scala2.13 换成scala2.12:

此时原来的2.13已经不能使用

scala的SDK换成新的2.12

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值