3
で2.5交換current.injectorを再生する私は2.5をプレイするために自分のアプリケーションを移行していると私は、次のような問題があります:current
としては形質
import play.modules.reactivemongo.ReactiveMongoApi
trait Foo {
override def reactiveMongoApi: ReactiveMongoApi = current.injector.instanceOf[ReactiveMongoApi]
...
}
object Foo extends Foo
が廃止され、私はそれを交換したいと思います。しかし、私は特性として@Inject() (val reactiveMongoApi: ReactiveMongoApi)
を使用することはできません。 どうすればいいですか? FooClass
(reactiveMongoApi
)でプロパティ名が特色Foo
で定義された方法と一致するか
import play.modules.reactivemongo.ReactiveMongoApi
trait Foo {
def reactiveMongoApi: ReactiveMongoApi
// other methods
}
@Singleton
class FooClass @Inject()(reactiveMongoApi: ReactiveMongoApi) extends Foo {
// other methods
}
お知らせ:
まだ何かが混乱していますが、後でFooClassのインスタンスをどのように作成しますか? – Scipion
Guiceがそれを処理します。 [モジュールを作成して設定する](https://www.playframework.com/documentation/2.5.x/ScalaDependencyInjection#Programmatic-bindings)の後、必要なものを作成する**フレームワークが必要です依存関係。また、この回答を参照してくださいhttp://stackoverflow.com/a/35823086/4600 – marcospereira