SBT:在裸build.sbt中添加/启用IntegrationTest配置

Rom*_*dev 1 integration-testing scala build bare sbt

我有一个用裸风格写的build.sbt,即只包含SettingKeys。我想向IntegrationTest项目中添加配置,但是如果不声明项目并对其调用configs方法,就无法做到这一点,如下所示:

lazy val root = (project in file(".")).configs(IntegrationTest).settings(
  build.projectSettings,
  Defaults.itSettings
)
Run Code Online (Sandbox Code Playgroud)

仅添加Defaults.itSettings到build.sbt会导致有关不存在的配置的异常

java.lang.IllegalArgumentException: Cannot add dependency 'org.cassandraunit#cassandra-unit;3.3.0.2' to configuration 'it' of module com-mymodule because this configuration doesn't exist!
Run Code Online (Sandbox Code Playgroud)

我如何才能保持我的build.sbt裸样式并添加IntegrationTest配置?

lau*_*lic 5

您可以直接添加configsbuild.sbt

configs(IntegrationTest)
Defaults.itSettings
Run Code Online (Sandbox Code Playgroud)

但是,您应该了解,如果您具有多项目构建,则最好显式声明所有项目及其公共设置。