gpt4 book ai didi

scala - 尝试实例化命名(注释)类

转载 作者:行者123 更新时间:2023-12-02 06:31:17 25 4
gpt4 key购买 nike

首先,感谢您为尝试回答问题所做的努力。从当前应用程序注入(inject)器 (play.api.Play.current.injector),如何获取类的命名实例?我尝试将注入(inject)器转换为 ScalaInjector (net.codingwell.scalaguice.InjectorExtensions.ScalaInjector) 和 Guice Injector (com.google.inject.Injector),均未成功。问题是实例化一个类只有3个方法,都是重载了instanceOf[T]

最佳答案

对于正常的依赖你会这样做

play.api.Play.current.injector.instanceOf[ProjectRepo]

当你想检索一个命名的依赖时你可以这样做

val qualifier = Some(QualifierInstance(Names.named("name")))
val bindingKey = BindingKey[ProjectRepo](Class[ProjectRepo], qualifier)

play.api.Play.current.injector.instanceOf[ProjectRepo](bindingKey)

无论如何,你应该只在极少数情况下直接使用注入(inject)器,确保没有更简单的方法来检索你的依赖项。

关于scala - 尝试实例化命名(注释)类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35558453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com