我的build.sbt
中的依赖项没有针对我正在使用的Scala 2.9.0-1
的特定构建,而是我应该使用2.9.0
的构建。如何配置构建,以便在不指定每个依赖项的确切版本的情况下确定构建?例如,subcut没有2.9.0-1
的构建。
我build.sbt
的某些内容:
...
scalaVersion := "2.9.0-1"
libraryDependencies ++= Seq(
"org.scala-tools" %% "subcut" % "0.8"
)
...
我宁愿避免这个:
"org.scala-tools" % "subcut_2.9.0" % "0.8"
指定多个版本,按照指定的顺序尝试。
答案 0 :(得分:7)
这就是我所做的:
libraryDependencies <++= (scalaVersion) { (v) =>
val scalaVersionString = v match {
case "2.9.0-1" => "2.9.0"
case _ => v
}
Seq(
"org.scala-tools.testing" % ("scalacheck_" + scalaVersionString) % "1.8" % "test" withSources,
"org.specs2" %% "specs2" % "1.3" % "test" withSources,
"com.github.dmlap" %% "sizeof" % "0.1" % "test" from "http://cloud.github.com/downloads/dmlap/jvm-sizeof/jvm-sizeof-0.1.jar"
)
}