我在Eclipse Scala IDE中进行编辑,并使用sbt~ test
在单独的屏幕上运行我的测试。我的测试是使用specs2编写的。
这给了我双重编译,有时 Eclipse 仍在构建,而 sbt 开始启动。
为了解决这个问题,我关闭了自动构建,但这也消除了 Eclipse 中漂亮的编译器警告和错误。
有没有办法在没有双重编译时间的情况下两者兼得?
编辑
我想最好的方法(或者可能是唯一的方法)是在sbt
不编译的情况下运行测试。我尝试了该test:run
命令,但这给了我以下错误:
java.lang.RuntimeException: No main class detected.
at scala.sys.package$.error(package.scala:27)
at sbt.Defaults$$anonfun$runTask$1$$anonfun$apply$27$$anonfun$13.apply(Defaults.scala:519)
at sbt.Defaults$$anonfun$runTask$1$$anonfun$apply$27$$anonfun$13.apply(Defaults.scala:519)
at scala.Option.getOrElse(Option.scala:108)
at sbt.Defaults$$anonfun$runTask$1$$anonfun$apply$27.apply(Defaults.scala:519)
at sbt.Defaults$$anonfun$runTask$1$$anonfun$apply$27.apply(Defaults.scala:518)
at sbt.Scoped$$anonfun$hf5$1.apply(Structure.scala:581)
at sbt.Scoped$$anonfun$hf5$1.apply(Structure.scala:581)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:49)
at sbt.Scoped$Reduced$$anonfun$combine$1$$anonfun$apply$12.apply(Structure.scala:311)
at sbt.Scoped$Reduced$$anonfun$combine$1$$anonfun$apply$12.apply(Structure.scala:311)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:41)
at sbt.std.Transform$$anon$5.work(System.scala:71)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:232)
~ test:run
Eclipse 编译文件时如何使用?