在SBT的配置文件build.sbt中,配置库包依赖的方法如下:
lazy val sparkSettings = Seq(
organization := "com.didichuxing",
version := "1.0",
scalaVersion := "2.11.10",
libraryDependencies := Seq("org.apache.spark" %% "spark-sql" % "2.3.0")
)
这样配置的“spark-sql”版本的完整名称是“org.apache.spark#spark-sql_2.11;2.3.0”,但也限定了scala的版本必须为“2.11.x”,如果希望使用最新的scala版本,怎么办呢?
解决办法是将依赖中的“%%”改为“%”,并指定“spark-sql”的scala版本,如下:
lazy val sparkSettings = Seq(
organization := "com.didichuxing",
version := "1.0",
scalaVersion := "2.12.3",
libraryDependencies := Seq("org.apache.spark" % "spark-sql_2.11" % "2.3.0")
)
结论
%% | % |
---|---|
自动给库包的报名结尾加上Scala的版本号 | 只用于分割groupId与artifactId |