gpt4 book ai didi

sbt 发布的工件中的 scala-library.jar 版本

转载 作者:行者123 更新时间:2023-12-04 02:28:21 26 4
gpt4 key购买 nike

由于 Scala 2.10.1 即将推出,我相信,我想确保我现在发布的工件将自动与该版本的 scala-library.jar 一起使用。我使用 sbt 0.12.2 发布,并设置为

scalaVersion := "2.10.0"

我正确地将二进制兼容版本附加到我的工件上,例如
<artifactId>mylibrary_2.10</artifactId>

...但 Scala 库依赖项仍然说 2.10.0:
     <dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.0</version> <!-- !!! -->
</dependency>

我想这是不正确的,它应该在这里使用 2.10 或 2.10.+ 吗?

我也尝试添加 scalaBinaryVersion := "2.10"但这似乎并没有改变任何事情。

我的另一个想法是使用 scalaVersion := "2.10.+" . Sbt 永远陪伴 Getting Scala 2.10.+ ... ,但最终还是顺利, pom现在有这个版本的 scala-library.jar。那么也许这是正确的方法?

最佳答案

最好选择 2.10.x,因为它意味着在次要版本之间是二进制兼容的(如 release notes 中所述)。

通常,您可以使用 crossScalaVersions 为任意版本的 Scala 生成工件。在 sbt 中设置。

生成.sbt

name := "so-14803362"

scalaVersion := "2.10.0"

crossScalaVersions := Seq("2.10.0", "2.10.1", "2.10.2")

通过上述配置,您可以在前面添加 + sbt 命令为每个 Scala 版本运行它们:
> + publish

这将使用 crossScalaVersions 中列出的每个 Scala 版本构建和发布您的项目工件。 .

sbt docs了解更多信息。

关于sbt 发布的工件中的 scala-library.jar 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14803362/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com