【问题标题】:Akka stream 2.6. How to create ActorMaterializer?Akka 流 2.6。如何创建 ActorMaterializer?
【发布时间】:2020-03-05 04:40:43
【问题描述】:

从 2.6 开始,我在这一行收到弃用警告:

import akka.stream.ActorMaterializer
implicit val actorMaterializer = ActorMaterializer()

警告:

对象 ActorMaterializer 中应用的方法已弃用(从 2.6.0 开始): 使用具有流属性的系统范围的物化器或 配置设置以更改默认值

我不明白那条信息,我该怎么办?什么是“系统范围的物化器”,它位于某个 akka 包中?

【问题讨论】:

    标签: scala akka-stream


    【解决方案1】:

    不再需要了。但是您必须在您的上下文中提供ActorSystem 中的implicit

    implicit val actorSystem = ActorSystem()
    

    然后物化器隐式派生自ActorSystem中的akka.stream.Materializer

      /**
       * Implicitly provides the system wide materializer from a classic or typed `ActorSystem`
       */
      implicit def matFromSystem(implicit provider: ClassicActorSystemProvider): Materializer =
        SystemMaterializer(provider.classicSystem).materializer
    

    【讨论】:

    • 是的,但是您需要将 akka-stream 作为依赖项。
    • @learn2code 如果不使用 akka 流,为什么还需要 Materializer?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-31
    • 2017-09-24
    相关资源
    最近更新 更多