@Override
  public void setResourceLoader(ResourceLoader resourceLoader) {
    if (Metadata.getCurrent().isWarDeployed()) {
      this.localResourceLoader = resourceLoader;
    } else {
      // The "settings" may be null in some of the Grails unit tests.
      BuildSettings settings = BuildSettingsHolder.getSettings();
      String location = null;
      if (Environment.getCurrent().isReloadEnabled()) {
        location = Environment.getCurrent().getReloadLocation();
      }
      if (location == null)
        location = settings != null ? settings.getResourcesDir().getPath() : null;

      this.localResourceLoader = new DevelopmentResourceLoader(this.application, location);
    }
    super.setResourceLoader(localResourceLoader);
    this.resourceResolver = new PathMatchingResourcePatternResolver(this.localResourceLoader);
  }