sbt:从 build.sbt 交叉发布

Sla*_*idt 7 scala sbt

目前,我正在使用 SBT 脚本插件进行测试。要将插件发布到本地存储库,请使用 build.sbt 中的以下代码片段:

crossScalaVersions := Seq(scalaVersion.value,"2.11.7")

scriptedDependencies := {
      val local = publishLocal.value
}
Run Code Online (Sandbox Code Playgroud)

这样,工件就会发布到本地存储库中,但仅限于版本scalaVersion.value. 我想让它为两个 Scala 版本交叉发布。我怎样才能做到这一点?

Nad*_*ari 8

正如 @srjd 的评论中提到的,您可以使用+前缀。

正如文档的本节中提到的

要针对 crossScalaVersions 中列出的所有版本进行构建,请在要运行的操作前加上 + 前缀。例如:

> + test
Run Code Online (Sandbox Code Playgroud)

使用此功能的典型方法是在单个 Scala 版本(无 + 前缀)上进行开发,然后偶尔在发布时进行交叉构建(使用 +)。

这适用于任何操作,包括publisLocal.

> + publishLocal
Run Code Online (Sandbox Code Playgroud)