我看到了以下代码段
val settings = configuration.underlying.as[CookieSecretSettings]("silhouette.oauth1TokenSecretProvider")
我认为配置类型为play.api.Configuration
和underlying 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
。
答案 0 :(得分:0)
我意识到这是一个古老的问题,但今天我偶然发现了这个确切的问题,找不到任何有用的东西。
as
方法由第三方库(Ficus)提供,用于从Typesafe配置中读取案例类和Scala类型。您需要将其包括在构建依赖项中,然后添加到导入中:
import net.ceedubs.ficus.Ficus._
import net.ceedubs.ficus.readers.ArbitraryTypeReader._