是否可以将 SBT 配置为在交叉构建时使用完全不同的库版本,具体取决于构建项目的 scala 版本?
例如:
- 使用 Scala 构建时,
2.9.2
我想使用"org.scalatest" % "scalatest_2.9.2" % "2.0.M5" % "test"
- 使用 scala 构建时,
2.10.0
我想使用"org.scalatest" % "scalatest_2.10.0-RC5" % "2.0.M5-B1" % "test"
像这样的东西应该工作:
libraryDependencies <+= scalaVersion(scalatestDependency(_))
def scalatestDependency(scalaVersion: String) = scalaVersion match {
case "2.9.2" => "org.scalatest" % "scalatest_2.9.2" % "2.0.M5" % "test"
case "2.10.0" => "org.scalatest" % "scalatest_2.10.0-RC5" % "2.0.M5-B1" % "test"
}
我假设您实际上的意思是库版本应该是相反的?:-)
你可以在ScalaMock 2 build中看到这个主题的变化。