不是一个有效的命令:它执行sbt时它

时间:2013-10-25 22:22:00

标签: scala sbt

我按照http://www.scala-sbt.org/release/docs/Detailed-Topics/Testing#integration-tests添加集成测试的步骤进行了操作。

但是,当我运行sbt it时,请参阅以下内容:

$ sbt it
[info] Loading project definition from myproj/project
[info] Set current project to myproj (in build file:myproj/)
[error] Not a valid command: it
[error] Not a valid project ID: it
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: it
[error] it
[error]   ^

sbt test按预期工作

2 个答案:

答案 0 :(得分:1)

Integration Tests中描述的内容是关于如何添加新配置,即it。有许多可用的配置,例如CompileTestRuntimeDocsPom - 您可以在sbt.Configuration对象中找到vals的默认值

Selecting the configurationScoping by configuration axis中SBT的官方文档应该解释为什么您调用sbt it需要一个命令或it名称的任务,结果是事实并非如此。

it配置绑定您可能已在其他配置中使用的任务,例如test重新配置,以便集成测试位于it目录中(而不是默认值 - { {1}})。

答案 1 :(得分:0)

经过一堆谷歌搜索,我意识到问题是集成测试与测试不完全相同。要运行集成测试,配置略有不同:

sbt it:test

当我这样做时,一切正常。