2017-02-22 80 views
0

我想建立一個2.11和2.12版本我的項目,所以我有這樣的事情在我Build.scala文件:如何在用sbt在Scala中交叉編譯時解決依賴關係?

val scalaVer12 = "2.12.1" 
val scalaVer = "2.11.8" 

lazy val basicSettings = Seq(
    // lots of other settings 
    scalaVersion    := scalaVer 
) 

在湯裏的蒼蠅我對Scala的反射,依賴其基於scala版本。之前,我這樣做:

val scala_reflect = "org.scala-lang" % "scala-reflect" % Build.scalaVer 

我怎麼能修改此依賴行,以便將SBT要麼使用基於它目前正在建設中的版本2.11或2.12的依賴?

回答

3
lazy val bla = project in file("bla") 
.settings(
    libraryDependencies ++= Seq(
    "org.scala-lang" % "scala-reflect" % scalaVersion.value 
    ) 
) 

決不別名依賴這樣的,它的清潔有一個對象來存儲版本號,但沒有更多的,它只是一種氣味,特別是因爲DEPS往往斯卡拉取決於版本,你可以應用各種規則他們。