You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@coursera, we use Play!, which recently moved to pluggable DI implementations in Play 2.4. Previous to Play 2.4, we've been using Governator for lifecycle capabilities, among other things.
Play! attempts to be DI-framework agnostic, and has an abstraction of an Injector, with a default Guice implementation called GuiceInjector.
Unfortunately, when getting an instance of play.api.inject.Injector from the Governator child injector, the com.google.inject.Injector bound to the injector parameter of play.api.inject.guice.GuiceInjector is the Governator parent injector. This then causes all sorts of problems because bindings configured on the child injector are therefore not available on the bootstrap injector.
I have created a repro case (minimal sbt project), including a workround: include a parameter that can't be found from the bootstrap injector.
The text was updated successfully, but these errors were encountered:
@coursera, we use Play!, which recently moved to pluggable DI implementations in Play 2.4. Previous to Play 2.4, we've been using Governator for lifecycle capabilities, among other things.
Play! attempts to be DI-framework agnostic, and has an abstraction of an
Injector
, with a default Guice implementation calledGuiceInjector
.Unfortunately, when getting an instance of
play.api.inject.Injector
from the Governator child injector, thecom.google.inject.Injector
bound to theinjector
parameter ofplay.api.inject.guice.GuiceInjector
is the Governator parent injector. This then causes all sorts of problems because bindings configured on the child injector are therefore not available on the bootstrap injector.I have created a repro case (minimal
sbt
project), including a workround: include a parameter that can't be found from the bootstrap injector.The text was updated successfully, but these errors were encountered: