title: GuiceApplicationLoader configuration error
body: <p>So, I'm trying to implement compile time DI with something that looks like this:</p>
  
  <pre><code>package modules
  
  class MyModule extends AbstractModule {
    def configure() {
      bind(classOf[MyT]).to(classOf[MyTImpl])
    }
  }
  
  class MyApplicationLoader extends GuiceApplicationLoader {
    override protected def builder(context: ApplicationLoader.Context): GuiceApplicationBuilder = {
    initialBuilder
      .in(context.environment)
      .loadConfig(context.initialConfiguration)
      .overrides(overrides(context): _*)
      .load(new MyModule)
    }
  }
  </code></pre>
  
  <p>application.conf includes a line:</p>
  
  <pre><code>play.application.loader = "modules.MyApplicationLoader"
  </code></pre>
  
  <p>However, when I try to spin up the application, I get an error: </p>
  
  <pre><code>ConfigurationException: Guice configuration errors:
  
  1) No implementation for play.api.Application was bound.
    while locating play.api.Application
  
  1 error
  
  No source available, here is the exception stack trace:
  -&gt;com.google.inject.ConfigurationException: Guice configuration errors:
  
  1) No implementation for play.api.Application was bound.
    while locating play.api.Application
  
  1 error
       com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1042)
       com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1001)
       com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1051)
  ....
  </code></pre>
  
  <p>Don't understand why this isn't working, as none of the examples I've seen for this do anything more involved. What am I overlooking?</p>