Load an application given the context.
Create an injector for runtime DI.
Create an injector for runtime DI.
This can be used by runtime DI providers to provide an injector during testing. The injector should contain all the components specified by the modules, and should also bind itself.
If this method is not implemented, FakeApplication will use a NewInstanceInjector instead.
Loads an application. This is responsible for instantiating an application given a context.
Application loaders are expected to instantiate all parts of an application, wiring everything together. They may be manually implemented, if compile time wiring is preferred, or core/third party implementations may be used, for example that provide a runtime dependency injection framework.
During dev mode, an ApplicationLoader will be instantiated once, and called once, each time the application is reloaded. In prod mode, the ApplicationLoader will be instantiated and called once when the application is started.
Out of the box Play provides one default implementation, the play.api.inject.guice.GuiceApplicationLoader.
A custom application loader can be configured using the
application.loader
configuration property. Implementations must define a noarg constructor.