将Java CompletableFuture转换为Scala未来



从我的Scala函数中,我调用了一个Java API方法,该方法返回了一个CompletableFuture。我现在需要将其转换为 Scala 未来!我想我可以使用 scala java8 压缩工具来完成这项工作,但我应该使用此工具的哪个版本?我尝试使用:

"org.scala-lang.modules" % "scala-java8-compat" % "0.9.0"

我的 sbt 构建失败了

org.scala-lang.modules#scala-java8-compat;0.9.0: not found. I guess I should add a resolver, but which one?

其次,为了使用 FutureConverters.toScala,我需要访问 completeStage。我从哪里可以得到这个?

例如,在通话中:

scala.compat.java8.FutureConverters.toScala(completionStage)

我从哪里获得此完成阶段?

试试

libraryDependencies += "org.scala-lang.modules" %% "scala-java8-compat" % "0.9.0"

这与

libraryDependencies += "org.scala-lang.modules" % "scala-java8-compat_2.12" % "0.9.0"

注意%%_2.12

CompletionStagejava.util.concurrent.CompletableFuture的超类型。所以如果你有CompletableFuture就是这样。

最新更新