강의

멘토링

커뮤니티

Inflearn コミュニティ Q&A

rladkgus45532235 のプロフィール画像
rladkgus45532235

投稿した質問数

Spring核心原理 - 基本編

プロトタイプスコープ - シングルトンBeanと併用時 プロバイダーで問題解決

@Autowired 빨간줄

作成

·

2.3K

0

 

@Scope("singleton")
static class ClientBean{
    @Autowired
    private Provider<PrototypeBean> provider;
    public int logic() {
        PrototypeBean prototypeBean = provider.get();
        prototypeBean.addCount();
        int count = prototypeBean.getCount();
        return count;
    }
}

위에 코드 @Autowired 에 빨간줄이 생기면서

Inspection 'Incorrect autowiring in Spring bean components' options 오류 메시지가 뜨네요

그런데 테스트 실행은 정상작동 되던데 뭐가 문제인가요?

spring객체지향

回答 1

9

저도 강의보다가 빨간줄이 떠서 답변이 있을까해서 왔는데 없네요. 일단 해결했기에 제 해결방법을 남겨봅니다.

PrototypeBean과ClientBean에 @Component를 붙여주면 해결되실겁니다.

추측으로서는 테스트시에는 AnnotationConfigApplicationContext에 직접 빈을 등록하고 있기 때문에 테스트는 실패하지 않는것으로 보이고

IDE에서는 컴포넌트 자동스캔설정도 안되어있고 설정정보도없기에 autowired안되요 라고 빨간줄로 보여주는것 같습니다.

감사합니당

rladkgus45532235 のプロフィール画像
rladkgus45532235

投稿した質問数

質問する