在sbt中,如何使跨版本插件顺利失败



假设如果我使用sbt交叉版本和可能的scala版本:

crossScalaVersions ++= List(
//  "2.13.6",
"2.13.4",
"2.13.3",
"2.13.2",
"2.13.1",
"2.12.6",
"2.12.7",
"2.12.8",
"2.12.9",
"2.12.10",
"2.12.11",
"2.12.12",
"2.12.13",
"2.12.14",
)

有些版本不兼容(这是预期的行为(。当我跑";sbt+测试";,构建过程总是在出现第一个兼容性错误的早期失败。因此,它不会提供关于哪些版本是兼容的100%信息。

有没有一种方法可以指示sbt在这种情况下只抛出警告,并继续尝试所有其他版本,这样程序员就可以在之后获得兼容性矩阵?

给你更多这个问题的背景。我想尝试的项目是:

https://github.com/tek/splain

将github操作作为兼容性验证的主要CI

您可以使用sbt项目矩阵插件(https://github.com/sbt/sbt-projectmatrix)将每个版本定义为一个(子(项目。

它被广泛用于处理涉及跨版本的复杂场景。

然后,只需运行sbt test,您就可以快速查看哪个(子(项目失败了。

最新更新