无法在`Config`中找到`as`方法

时间:2018-04-03 07:10:06

标签: playframework-2.6

我看到了以下代码段

   val settings = configuration.underlying.as[CookieSecretSettings]("silhouette.oauth1TokenSecretProvider")

我认为配置类型为play.api.Configurationunderlying is of type配置`https://www.playframework.com/documentation/2.6.x/api/scala/index.html#play.api.Configuration

我在我的Apploader中复制了代码(因为我正在使用编译时间注入)。 BuiltInComponentsFromContext有一个configuration变量。我想使用如下val config = configuration.underlying.as[CookieAuthenticatorSettings]("silhouette.authenticator"),但编译器无法解析as。我做错了什么?

Config库似乎有asInstanceOf而不是as,但如果我使用它,我会收到其他错误。我注意到as工作的代码在我使用play时使用2.4.2版本2.6.12

1 个答案:

答案 0 :(得分:0)

我意识到这是一个古老的问题,但今天我偶然发现了这个确切的问题,找不到任何有用的东西。

as方法由第三方库(Ficus)提供,用于从Typesafe配置中读取案例类和Scala类型。您需要将其包括在构建依赖项中,然后添加到导入中:

import net.ceedubs.ficus.Ficus._
import net.ceedubs.ficus.readers.ArbitraryTypeReader._