@SuppressWarnings("unchecked") @Override public Configuration buildConfiguration() throws AnnotationRequired { if (annotationFinder().isAnnotationPresent(UsingGroovy.class)) { Class<GroovyClassLoader> classLoaderClass = annotationFinder().getAnnotatedValue(UsingGroovy.class, Class.class, "classLoader"); Class<GroovyResourceFinder> resourceFinderClass = annotationFinder().getAnnotatedValue(UsingGroovy.class, Class.class, "resourceFinder"); try { GroovyClassLoader classLoader = super.instanceOf(classLoaderClass, classLoaderClass); GroovyResourceFinder resourceFinder = super.instanceOf(resourceFinderClass, resourceFinderClass); context = createGroovyContext(classLoader, resourceFinder); } catch (Exception e) { annotationMonitor().elementCreationFailed(GroovyContext.class, e); } } else { annotationMonitor().annotationNotFound(UsingGroovy.class, annotatedClass()); } return super.buildConfiguration(); }