如何修复喷涂示例中的编译错误?

Che*_*rry 3 types scala spray

喷雾文档有关于onComplete指令的示例

我复制了例子:

path("divide" / IntNumber / IntNumber) { (a, b) =>
        onComplete(divide(a, b)) {
          case Success(value: Any) => complete(s"The result was $value")
          case Failure(ex)    => complete(StatusCodes.InternalServerError, s"An error occurred: ${ex.getMessage}")
        }
      }
def divide(a: Int, b: Int): Future[Int] = Future {
  a / b
}
Run Code Online (Sandbox Code Playgroud)

我得到了错误:

Type mismatch, expected: onCompleteFutureMagnet[NoninferedT], actual Future[Int]
Run Code Online (Sandbox Code Playgroud)

似乎在代码中遗漏了一些非常简单的东西.

喷涂版本为1.3.1

更新

我已经下载了喷雾源并在FutureDirectivesSpec中看到了相同的编译错误.

小智 7

import ExecutionContext.Implicits.global
Run Code Online (Sandbox Code Playgroud)

适合我