斯卡拉 – 在2.10.0的交叉建筑中

我正在与sbt 12.1交叉构建一个
scala项目.

crossScalaVersions := Seq("2.9.2", "2.10.0")

但是,它找不到依赖项,因为它们被命名为_2.10而不是_2.10.0.除了scala语言和scala-compiler之外,似乎定期命名库2.10而不是2.10.0.例如,scalaz在http://repo1.maven.org/maven2/org/scalaz/scalaz-core_2.10.0/6.0.4/scalaz-core_2.10.0-6.0.4.pom但在http://repo1.maven.org/maven2/org/scalaz/scalaz-core_2.10/6.0.4/scalaz-core_2.10-6.0.4.pom没有找到.

有没有一种简单的方法来处理这个问题,而无需为所有依赖项编写自定义规则?

实际的build.sbt可用于online.

最佳答案 由于2.10.x版本之间是二进制兼容的,因此只需要使用一个版本的scala库构建库 – 它们可以(并且必须)删除.0部分(如果使用sbt发布,则会自动完成).当库的维护者发布带有_2.10.0标记的库时,这是一个错误,您应该考虑提交错误.

顺便说一句,我查看了你的build.sbt – 运行编译它对我有用(sbt 0.12.1).你有经历过一些错误吗?

点赞