오류 발생
롬복의 @RequiredArgsConstructor을 통해 생성자 주입을 아주 편리하게 사용하고 있는 도중에
동일한 인터페에스를 사용하는 여러 구현체가 있어서 @Qualifier
오류가 뜬것이 아닌가.......(┬┬﹏┬┬)
그래서 찾아보니.
@RequiredArgsConstructor 어노테이션은 final이거나 @NonNull이 붙은 필드에 대해 생성자를 자동으로 만들어 주기 때문에 @Qualifier 어노테이션이 붙은 필드에 대해서는 @Qualifier 어노테이션을 생성자의 매개변수에 복사하지 않기 때문에 생성자를 주입할 수 없는 오류가 발생했던 것이다..
해결책
Lombock.config 파일의 다음과 같은 설정을 추가해 주고 Rebuild Project를 해주면 된다.
lombok.copyableAnnotations += org.springframework.beans.factory.annotation.Qualifier
해당 명령어를 작성해 주면 Lombok은 @Qualifier 어노테이션을 생성자의 매개변수에 복사 하게게됩니다.!
정상적으로 실행된 것을 볼 수 있다.
Reference
podo-dev : @RequiredArgsConstructor과 @Qualifier 같이 사용 시 이슈 해결법
문제 Lombok의 @RequiredArgsConstructor는 final인 필수 멤버변수에 대해서, 자동으로 생성자를 만들어주는 어노테이션입니다. 문제는 다음과 같은 상황일때, 발생합니다. ``` java @RequiredArgsConstructor public c
www.podo-dev.com
Springboot dependency: two dependencies found and Qualifier ignored
This is my class: @Repository @RequiredArgsConstructor @Slf4j public class ServeiTerritorialCatalegsClientRepositoryImpl implements ServeiTerritorialCatalegsClientRepository { @Qualifier("
stackoverflow.com