私はプレイからこの警告を取得するテストを記述しようとしている間:再生: `Play.current`をDIで置き換えるには?
をあなたはスコープ内の暗黙的なアプリケーションを持っていません。現在実行中のアプリケーションをコンテキストに持っていきたい場合は、依存関係注入を使用してください。
私は、このインポートを追加する場合、それは魔法のスコープでのアプリケーションの問題を解決ことが判明:
import play.api.Play.current
それは中
方法電流ことを警告しますがオブジェクトPlayは非推奨です:これはアプリケーションへの静的な参照です。代わりにDIを使用してください
依存性注入を使用して同じ結果を得るにはどうすればよいですか?私はそれを必要とするところである:
class TestSpec extends PlaySpec with OneAppPerSuite { ... }
編集:私はthis postを見つけたと私は答えは私に暗黙のApplication
を取得に向けた手がかりを与えることができますどのように表示されません。
多くのDIを使用するかどうかによって異なります – Mysterion
私はそれがGuiceだと思います。これは、 'Play.current'がグローバルに挿入するものと等価な依存関係として挿入する必要があります。 – JulienD
「現在」から正確に何が必要ですか? – michaJlS