为什么不进行最严格的编译?

时间:2018-11-27 01:05:27

标签: scala scalatest

我有一个简单的测试设置,例如

package unit

import net.kolotyluk.leaderboard.scorekeeping._
import net.kolotyluk.leaderboard.telemetry.Metrics
import net.kolotyluk.scala.extras.Logging
import org.scalatest.{FlatSpec, GivenWhenThen, Matchers, SequentialNestedSuiteExecution}

import scala.collection.mutable.ArrayBuffer
import scala.concurrent.{Await,Future}
import scala.concurrent.duration._
import scala.concurrent.ExecutionContext.Implicits.global
import scala.util.{Failure, Random, Success}

class LeaderboardSpec
  extends FlatSpec
    with SequentialNestedSuiteExecution
    with GivenWhenThen
    with Matchers
    with Logging {

  behavior of "Leaderboard"

  it must "handle initial conditions correctly" in {

但是当我尝试编译测试时,会出现53个错误,例如

[IJ]sbt:leaderboard> test
[info] Compiling 1 Scala source to C:\Users\ERIC\Documents\git\repos\leaderboard\target\scala-2.12\test-classes ...
[error] C:\Users\ERIC\Documents\git\repos\leaderboard\src\test\scala\unit\LeaderboardSpec.scala:21:12: could not find implicit value for parameter pos: org.scalactic.source.Position
[error]   behavior of "Leaderboard"
[error]            ^

实际上没有传达有关问题所在的任何有用信息。我只能假定在build.sbt文件或其他地方未正确配置某些东西。

这段代码确实一次起作用了,在我清理事物,改变事物的过程中,现在已经坏了,没有很好的诊断程序。

有人可以建议要寻找的东西吗?

1 个答案:

答案 0 :(得分:0)

因此似乎可以正确编译并正常运行的一种解决方法是停止使用SBT并改为使用Maven。

我认为这是我到目前为止在SBT中发现的第三个主要缺陷。