我使用sbt 0.13.5 。
我想在一台机器上执行测试,并且他们成功地将项目移动到另一台机器并在没有编译的情况下重新运行它们。
我尝试了sbt testOnly package_1 package_2
,但它没有用。
以下是我要做的步骤:
sbt clean compile
编译项目。如果我在这台机器上执行sbt testOnly myTest1
,它可以正常工作。target
target
目录。)答案 0 :(得分:0)
我认为如果没有构建定义的某个子集,您将无法执行测试,即您没有测试项目的所有依赖项。 target
里面的内容只是你在项目中编写的编译源 - 没有测试库。如果没有先帮助自己,sbt将无法帮助你。
您可以模仿sbt对传递性下载test
和compile
依赖关系所做的事情,但与将构建定义复制到其他计算机相比,这是太多的工作。
可能的工作原理是在另一台计算机上的单个(半)项目中拥有build.sbt
和target
目录。 sbt test
应该可以正常工作(出于显而易见的原因,请不要使用clean
。)