例如我可以在我的构建中写:
name in Test := "some name"
name in test := "some name"
两者都可以完美地工作。那么它们之间有什么区别呢?
例如我可以在我的构建中写:
name in Test := "some name"
name in test := "some name"
两者都可以完美地工作。那么它们之间有什么区别呢?
在第一种情况下Test
是类型配置。因为在官方文档中对 sbt 感到难过:
A configuration defines a flavor of build, potentially with its own classpath, sources, generated packages, etc.
第二个test
只是在全局范围内定义的简单任务。如果你inspect test
在 sbt 中调用,它将显示test
只执行所有测试并由 global scope 提供*:test
,它就像所有测试任务的聚合器。inspect tree task
您可以使用命令查看整个被测任务树。要检查Test
您应该调用的配置inspect test:configuration
,您可以看到它只是为您的项目中的测试范围提供配置。所以name in test
并name in Test
有相同的结果