2017-05-11 7 views
0

없이 다른 모듈에 나는 다음 봄 버전을 사용하고 있지 :SpringBoot BeanCurrentlyInCreationException하지만 내 웹 응용 프로그램에서 SpringBoot

<org.springframework-version>3.2.9.RELEASE</org.springframework-version> 

내가 다른 하나와 형태의주기를 따라 콩을 많이 가지고 있지만 아무 문제가 없습니다를 사용할 수 있습니다

@Autowired 
SampleBean bean 

아무런 문제가 없습니다.

Unsatisfied dependency expressed through field 'beanDao'; nested exception is org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'beanDao': Bean with name 'beanDao' has been injected into other beans [beanA,beanB] in its raw version as part of a circular reference, but has eventually been wrapped 

어떻게 그것을 해결하기 위해 : 나는 다른 모듈에서 콩을 주입하려고 나는 예외가 얻을 불행하게도 때

는 지금은

<parent> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-parent</artifactId> 
    <version>1.5.3.RELEASE</version> 
    <relativePath/> <!-- lookup parent from repository --> 
</parent> 

의 사용과 나머지 서비스를 만들기 위해 노력하고 있어요? SpringBoot에서이 오류가 발생하지만 SpringBoot를 사용하지 않고 웹 응용 프로그램에서 오류가 발생하는 이유는 무엇입니까?

+1

원형 참조를 제거했을 수도 있습니다. – Antoniossss

+1

관련 코드를 모두 보지 않고는 말할 수 없습니다. 아마 당신은 [최소한의 완전하고 검증 가능한 예제] (/ help/mcve)를 만들 수 있습니다. –

답변

0

스프링은 이미 'beanA'와 'beanB'에 'beanDao'를 삽입했습니다. 이제는 빈을 프록시로 랩핑하고 예외를 던집니다.

'beanA'와 'beanB'는 해당 프록시를 사용하지 않고 원 빈을 원합니다. 원할 수 없습니다. 봄이 예외를 일으키는 이유.

이전 버전과 마찬가지로 새로운 종속성에서이 프록시를 만드는 것으로 보입니다.

프록시를 야기하는 원인을 찾아서 사용하지 못하게 할 수 있습니다. 또는 더 나은 방법으로, 빈 의존성에서 순환을 제거하십시오.