Annotation Interface ProjectGenerationConfiguration


@Target(TYPE) @Retention(RUNTIME) @Documented @Configuration public @interface ProjectGenerationConfiguration
Specialization of Configuration for configuration of project generation, with Configuration.proxyBeanMethods() set to false by default.

Project generation configuration classes are regular Spring Configuration beans. They are located using the SpringFactoriesLoader mechanism (keyed against this class). Project generation beans can be @Conditional beans, usually based on the state of the ProjectDescription for which the ProjectGenerationContext was created.

@ProjectGenerationConfiguration-annotated types should not be processed by the main ApplicationContext so make sure regular classpath scanning is not enabled for packages where such configuration classes reside.

Author:
Andy Wilkinson, Stephane Nicoll
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    Specify whether @Bean methods should get proxied in order to enforce bean lifecycle behavior, e.g.
  • Element Details

    • proxyBeanMethods

      @AliasFor(annotation=org.springframework.context.annotation.Configuration.class) boolean proxyBeanMethods
      Specify whether @Bean methods should get proxied in order to enforce bean lifecycle behavior, e.g. to return shared singleton bean instances even in case of direct @Bean method calls in user code.
      Returns:
      whether a CGLIB proxy should be created to enforce bean lifecycle behavior
      See Also:
      • Configuration.proxyBeanMethods()
      Default:
      false