0__*_*0__ 11 scala sbt sbt-0.12
由于Scala 2.10.1即将推出,我相信,我想确保我现在发布的工件将自动使用该版本的scala-library.jar.我使用sbt 0.12.2发布,并设置为
scalaVersion := "2.10.0"
Run Code Online (Sandbox Code Playgroud)
我正确地将二进制兼容版本附加到我的工件,例如
<artifactId>mylibrary_2.10</artifactId>
Run Code Online (Sandbox Code Playgroud)
...但scala库依赖关系仍然说2.10.0:
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.0</version> <!-- !!! -->
</dependency>
Run Code Online (Sandbox Code Playgroud)
我想这是不正确的,它应该使用2.10或2.10.+这里?
我也尝试添加,scalaBinaryVersion := "2.10"但似乎没有改变任何东西.
我的另一个想法是使用scalaVersion := "2.10.+".Sbt需要永远Getting Scala 2.10.+ ...,但它终于很好,pom现在scala-library.jar有这个版本.那么也许这是正确的方法?
我认为,如果您生成“fat JAR”,则一切都由直接依赖项的版本决定(如果我错了,请纠正我),因为它们的直接依赖项也被指定等等。当然,这并不能保证您可以使用某些依赖于您想要的 Scala 库版本的组件,也不能保证您可以使用依赖于某些库的不同版本的组件,当然 Scala 正处于积极的开发阶段,但如果您坚持下去使用一些 Scala 库版本并进行了良好的测试,直到这个改变你就可以了。
但你不能保证下一个 Scala 库的一切都会很好,因为你还有其他组件可能不会在同一天同步,对吗?是的,Scala 库的版本应该与所使用的 Scala 编译器的版本相匹配。
| 归档时间: |
|
| 查看次数: |
848 次 |
| 最近记录: |