작성
·
163
0
***************************
APPLICATION FAILED TO START
***************************
Description:
Parameter 4 of constructor in io.springbatch.batch.job.api.SendJobConfiguration required a single bean, but 4 were found:
- apiMasterStep: defined by method 'apiMasterStep' in class path resource [io/springbatch/batch/job/api/ApiStepConfiguration.class]
- apiSlaveStep: defined by method 'apiSlaveStep' in class path resource [io/springbatch/batch/job/api/ApiStepConfiguration.class]
- jobStep: defined by method 'jobStep' in class path resource [io/springbatch/batch/job/api/SendChildJobConfiguration.class]
- fileStep: defined by method 'fileStep' in class path resource [io/springbatch/batch/job/file/FileJobConfiguration.class]
Action:
Consider marking one of the beans as @Primary, updating the consumer to accept multiple beans, or using @Qualifier to identify the bean that should be consumed
Process finished with exit code 1
이런 에러가 발생하는데 어케 해결해야 될까요? ㅠ
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
유영태님의 질문에 답변드리겠습니다.
스프링 배치 어플리케이션이 시작할 때 나타나는 빈 등록 관련 에러는 파라미터로 주입되어야 할 스프링 빈이 여러 개 발견되어 발생하는 것으로 보입니다. 이를 해결하기 위해서는 몇 가지 방법이 있습니다.
@Primary
어노테이션을 사용하여 스프링이 자동으로 주입할 기본 빈을 지정할 수 있습니다.@Qualifier
어노테이션을 사용하여 주입할 빈의 이름을 명시적으로 지정할 수 있습니다.에러 메시지에서는 @Primary
를 고려하거나, 소비자(여기서는 생성자)가 여러 빈을 받아들일 수 있도록 업데이트하거나, @Qualifier
를 사용하라고 제안하고 있습니다. 따라서, 위의 방법 중 하나를 선택하여 적용해보시길 권장합니다.
스프링 배치와 관련된 더 자세한 정보는 스프링 배치 공식 문서를 참고하시길 바랍니다.
도움이 되셨길 바랍니다!