我会有一个 Scala 问题。我在使用弹性4j 库时有以下代码。该代码在 Scala 12 中就像一个魅力,但我的项目,一个客户端库也使用 Scala-Cross 编译到 Scala 11。在 Scala 11 下构建它时,出现以下错误。任何人都知道应该如何在 Scala 11 中编写它以进行编译?
import io.github.resilience4j.retry.Retry
import java.util.function.{Supplier, Function => JavaFunction}
val supplier: Supplier[List[Endpoint]] = () => getEndpoints
val decoratedSupplier = Retry.decorateSupplier(retry, supplier)
val result = io.vavr.control.Try.ofSupplier(decoratedSupplier)
.onSuccess { endpoints => endpoints }
.onFailure { failure =>
// handle failure
}.get()
在 Scala 11 中,我收到以下错误:
[Error] ServiceDiscoveryClient.scala:38: type mismatch;
found : () => List[Endpoint]
required: java.util.function.Supplier[List[Endpoint]]
[Error] ServiceDiscoveryClient.scala:41: missing parameter type
[Error] ServiceDiscoveryClient.scala:97: type mismatch;
found : () => List[Endpoint]
required: java.util.function.Supplier[List[Endpoint]]
four errors found
有任何想法吗?谢谢!