【发布时间】:2019-05-24 18:33:49
【问题描述】:
我正在尝试在 Future 中执行一些代码,它将一些数据保存到 REST 端点,该端点本身会进行数据库调用。我正在尝试在 Future 中执行它,因此它不会阻止它周围的其他代码,这可能是时间敏感的。如果它成功,我真的不在乎未来代码中会发生什么,所以我正在尝试执行一个 Future[Unit]。但是,当我尝试编写以下代码时,IntelliJ 会在我的 Success(_) 下划线
无法解析方法success.unapply
这是我的代码:
def persistProgress():Unit = {
val result:Future[Unit] = Future {
//API Rest Call here with a case class
}
result.onComplete {
case Success (_) => // do nothing if successful
case Failure(e) => logger.info("Unable to persist" + e.getMessage)
}
}
知道怎么做吗?
【问题讨论】:
-
在这种特殊情况下,
.failed.foreach(...)呢? -
如果您使用 Scala 编译器直接或通过 sbt 构建,您会得到相同的错误吗?错误是真的说
success.unapply还是Success.unapply?如果没有,我想你会得到一个不同的错误,但你肯定导入了Success,对吧?