spring @async causing BeanCurrentlyInCreationException

March 16, 2017

Problem:

Caused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name ‘’: Bean with name ‘’ has been injected into other beans [] in its raw version as part of a circular reference, but has eventually been wrapped. This means that said other beans do not use the final version of the bean. This is often the result of over-eager type matching - consider using ‘getBeanNamesOfType’ with the ‘allowEagerInit’ flag turned off, for example.

Solution:

Autowire the beans by bean id

@Autowired  
@Qualifier("<bean name>")  
private <bean type> <var name>;  

, for example

@Autowired  
@Qualifier("publisher")  
private Publisher publisher;