잡동사니

반응형

질문

하나의 생성자를 다른 생성자를 사용하려고 시도하는 것처럼 빈 생성에 대해 불평하는 레거시 코드가 있습니다.

org.springframework.beans.factory.UnsatisfiedDependencyException : class 경로 리소스 [catContext.xml]에 정의 된 이름이 'catService'인 Bean 생성 오류 : [boolean] 유형의 인덱스 0 인 생성자 인수를 통해 표현 된 종속성이 만족스럽지 않습니다. 생성자 인수 유형이 모호합니다. 생성자 인수로 올바른 빈 참조를 지정합니까?

빈의 XML 정의는 다음과 같습니다.

 <bean id="catService" class="com.example.CatService" lazy-init="false">
    <constructor-arg  type="java.lang.String" value="${catName}" />
</bean>

catName값은 다른 파일에서 가져 오며 다음은 폴더 구조입니다. 여기에 이미지 설명 입력

class 자체에는 여러 생성자가 있습니다.

@Autowired
public CatService(String catName) {
    ...
}

public CatService(){
 ...
}


public CatService(boolean isHungry){
   ...
}

Spring이 "잘못된"생성자를 사용하는 이유는 무엇입니까?


답변1

그래서 이틀에 실망한 후 문제는 정확히 사라졌습니다.

코드 변경이 없습니다.

내가 수행 한 일부 작업 :

  • 컴퓨터 다시 시작
  • 상위 프로젝트에 대한 mvn clean
  • 문제를 일으킨 종속성 프로젝트에 대한 mvn clean
  • IntelliJ "무효화 캐시 & 다시 시작"이 여러 번 발생합니다.
  • GIT "흔들기"-서로 다른 분기간에 앞뒤로 이동

문제를 일으킨 종속성 프로젝트에 대한 mvn clean 이 주요 기여자라고 생각하지만 그들 중 누구도 스스로 마법을하지 않은 것 같습니다.



 

 

 

 

출처 : https://stackoverflow.com/questions/61866005/unsatisfied-dependency-expressed-through-constructor-argument-looking-for-bool

반응형

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band