NoSuchBeanDefinitionException
Bean을 찾지 못하는 경우 나타나는 에러이다.
간단하지만 자주 실수하는 case를 알아보도록 하자.
등록된 Bean과 사용하려는 Bean 이름이 다르다.
[Bean 지정 코드 중 일부]
@Bean("asycn-thread")
public Executor asyncThread(){
...
}
[등록된 Bean을 Async에서 사용하는 코드 중 일부]
@Async("async-thread")
public CompletableFuture run(){
...
}
Solution : Bean name이 틀리지 않도록 오타에 주의하도록 하자!
Bean을 등록한 패키지와 Bean을 사용하려는 패키지 위치가 달라 Bean을 찾지 못한다.
AppConfig [Bean 지정 코드 중 일부]
@Bean("asycn-thread")
public Executor asyncThread(){
...
}
[등록된 Bean을 Async에서 사용하는 코드 중 일부]
@Async("async-thread")
public CompletableFuture run(){
...
}

Solution : Bean을 찾을 수 있도록 패키지 위치를 수정해주자!

간단한 실수로 NoSuchBeanDefinitionException이 발생할 수 있는 Case이다.