假设如果我使用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
,您就可以快速查看哪个(子(项目失败了。