1

有没有一种简单的方法来比较 sbt 构建文件中的版本而无需手工制作。例如

scalacOptions <++= scalaVersion { sv =>
  if (sv >= "2.10.0") "-feature" :: Nil else Nil
}

(上面编译,但出于某种原因"2.9.2" >= "2.10.0"......?!)

4

2 回答 2

3

semverfi是一个 Scala 库,您可以将其添加到您的库中,project/plugins.sbt并且可以在构建定义中使用:

libraryDependencies += "me.lessis" %% "semverfi" % "0.1.2"
于 2013-01-28T00:34:14.947 回答
2

由于 sbt 1.2.0 有一个内置 API:https ://www.scala-sbt.org/1.0/docs/sbt-1.2-Release-Notes.html#Semantic+Version+selector+API

例如你可以做

VersionNumber("2.12.5").matchesSemVer(SemanticSelector(">=2.12"))
于 2019-06-13T19:02:48.923 回答