SBT导入Spark依赖时提示未找到依赖错误如何解决
问题原因
报错核心是Spark版本与Scala版本不兼容:Spark 2.3.3官方仅发布了适配Scala 2.11版本的构建包,不存在适配Scala 2.12的版本,因此sbt无法拉取到对应依赖。
解决方案
你可以根据自己的需求任选一种方案修改配置:
- 方案1:保留Spark 2.3.3版本,将Scala版本降级至2.11.x系列(推荐2.11.12),修改
build.sbt配置如下:
name := "spark" version := "0.1" scalaVersion := "2.11.12" libraryDependencies ++= Seq( "org.apache.spark" %% "spark-core" % "2.3.3", "org.apache.spark" %% "spark-sql" % "2.3.3" )
- 方案2:保留Scala 2.12.8版本,将Spark版本升级至2.4.0及以上的适配版本(推荐2.4.8,该版本同时兼容Scala 2.11与2.12),修改
build.sbt配置如下:
name := "spark" version := "0.1" scalaVersion := "2.12.8" libraryDependencies ++= Seq( "org.apache.spark" %% "spark-core" % "2.4.8", "org.apache.spark" %% "spark-sql" % "2.4.8" )
提示:如果是新入门学习,优先选择方案2,高版本Spark修复了大量已知问题,功能完善度更高。
内容的提问来源于stack exchange,提问作者Jonas_Astley
相关产品推荐
相关产品推荐

