如何使用未发布版本的Scala标准库构建sbt?
我想使用Scala 2.13.xx的标准库来使用最新的未发布版本的并发库。 我尝试过使用它:如何使用未发布版本的Scala标准库构建sbt?,scala,sbt,Scala,Sbt,我想使用Scala 2.13.xx的标准库来使用最新的未发布版本的并发库。 我尝试过使用它: scalaVersion:=“2.13.0-M1” 这导致: [错误]sbt.librarymanagement.ResolveException:未解析的依赖项:com.twitter#util-collection_2.13.0-M1;18.9.1:未找到 [错误]未解析的依赖项:org.scala stm#scala-stm_2.13.0-M1;0.8:未找到 [错误]未解析的依赖项:org.s
scalaVersion:=“2.13.0-M1”
这导致:
[错误]sbt.librarymanagement.ResolveException:未解析的依赖项:com.twitter#util-collection_2.13.0-M1;18.9.1:未找到
[错误]未解析的依赖项:org.scala stm#scala-stm_2.13.0-M1;0.8:未找到
[错误]未解析的依赖项:org.scalatic#scalatic_2.13.0-M1;3.0.5:未找到
[错误]未解析的依赖项:org.scalatest#scalatest_2.13.0-M1;3.0.5:未找到
[错误]未解析的依赖项:com.storm途中#scalameter_2.13.0-M1;0.8.2:未找到
是否有任何方法可以将最新未发布版本的Scala标准库与sbt一起使用,或者由于不是使用Scala 2.13.xx构建的依赖关系而无法使用?设置
scalaVersion
将同时使用编译器和该版本的标准库
但任何依赖项都需要使用二进制兼容的Scala版本构建。对于里程碑,这只是同一个里程碑。如果查看etc,除了ScalaMeter和util collection之外,其他所有版本都有针对2.13.0-M2发布的版本
对于缺少的依赖项,您可以获取源,更改它们的scalaVersion
并使用sbt publishLocal
(如果其中任何一个使用的是sbt以外的生成系统,则使用等效的方法)。希望他们能够在不改变源代码的情况下构建和工作
从技术上讲,您还可以通过使用更改标准库版本
autoScalaLibrary := false
libraryDependencies += "org.scala-lang" % "scala-library" % "2.13.0-M1" % "test"
但是这不太可能很好地工作(如果有的话)。设置
scalaVersion
将同时使用该版本的编译器和标准库
但任何依赖项都需要使用二进制兼容的Scala版本构建。对于里程碑,这只是同一个里程碑。如果查看etc,除了ScalaMeter和util collection之外,其他所有版本都有针对2.13.0-M2发布的版本
对于缺少的依赖项,您可以获取源,更改它们的scalaVersion
并使用sbt publishLocal
(如果其中任何一个使用的是sbt以外的生成系统,则使用等效的方法)。希望他们能够在不改变源代码的情况下构建和工作
从技术上讲,您还可以通过使用更改标准库版本
autoScalaLibrary := false
libraryDependencies += "org.scala-lang" % "scala-library" % "2.13.0-M1" % "test"
但这不太可能奏效(如果有的话)。请注意,当前的Scala 2.13里程碑是2.13.0-M5。要查看哪些库可用于M5,请参阅。它包括一个指向twitter/util票证的链接,该票证显示他们还没有发布M5版本,scala-stm也没有发布。您希望使用2.13里程碑的目标是什么?在不知道您的实际动机的情况下,很难给出具体的建议。我想使用最新的futures and promises library,thx,我将使用最新的里程碑。请注意,当前的Scala 2.13里程碑是2.13.0-M5。要查看哪些库可用于M5,请参阅。它包括一个指向twitter/util票证的链接,该票证显示他们还没有发布M5版本,scala-stm也没有发布。您希望使用2.13里程碑的目标是什么?在不知道你的实际动机的情况下,很难给出具体的建议。我想使用最新的期货和承诺库,thx,我将使用最新的里程碑。