这是build.sbt文件:
name := "scalaChartTest" version := "1.0" scalaVersion := "2.11.7" //libraryDependencies += "org.jfree" % "jfreechart" % "1.0.19" // //libraryDependencies += "org.scalafx" %% "scalafx" % "8.0.0-R4" // //libraryDependencies += "com.github.wookietreiber" %% "scala-chart" % "latest.integration" libraryDependencies += "org.apache.spark" % "spark-core_2.11" % "1.4.1"
15:56:30 SBT project import [warn] Multiple dependencies with the same organization/name but different versions. To avoid conflict,pick one version: [warn] * org.scala-lang:scala-compiler:(2.11.0,2.11.7) [warn] * org.scala-lang:scala-reflect:(2.11.2,2.11.7) [warn] * jline:jline:(0.9.94,2.12.1) [warn] * org.scala-lang.modules:scala-parser-combinators_2.11:(1.0.1,1.0.4) [warn] * org.scala-lang.modules:scala-xml_2.11:(1.0.1,1.0.4) [warn] * org.slf4j:slf4j-api:(1.6.4,1.7.10)
这里出了什么问题?
解决方法
您对警告中提到的库具有间接依赖性.存在冲突,因为间接依赖项中的版本与sbt文件中指定的版本不同(在这种情况下可能是scala版本).冲突由sbt自动解决(根据您的配置选择其中一个版本).但是,自动选择的版本可能不是您打算使用的版本,因此警告.
在您的情况下,这可能不是问题.但是,如果您愿意,可以显式排除间接依赖关系:
libraryDependencies += "org.apache.spark" % "spark-core_2.11" % "1.4.1" excludeAll ( ExclusionRule(organization = "org.scala-lang"),ExclusionRule("jline","jline"),ExclusionRule("org.slf4j","slf4j-api") )