Inflearn brand logo image

인프런 커뮤니티 질문&답변

taeyoul.im님의 프로필 이미지
taeyoul.im

작성한 질문수

3. 웹개발 코스 [Enterprise Architecture(EA) X 전자정부프레임워크]

제6강#0 아키텍처 및 데이터베이스와 데이터교환

제6강. No bean named 'MainService' available 에러 발생

작성

·

91

0

안녕하세요.

6강 소스코드 빌드 시 아래 오류가 발생햐며, 강의 프로젝트 Source를 이용하여도 발생합니다.

-- 아 래 --

SEVERE: 서블릿 [action]을(를) 위해 할당하던 중 예외 발생

org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'MainService' available


INFO: Initializing Spring DispatcherServlet 'action'

2025-04-17 00:14:30,620 INFO [org.springframework.web.servlet.DispatcherServlet] Initializing Servlet 'action'

2025-04-17 00:14:30,788 WARN [org.springframework.web.context.support.XmlWebApplicationContext] Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mainController': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'MainService' available

2025-04-17 00:14:30,792 ERROR [org.springframework.web.servlet.DispatcherServlet] Context initialization failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mainController': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'MainService' available

. . .

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'MainService' available

답변 2

0

개발자Park님의 프로필 이미지
개발자Park
지식공유자

안녕하세요.개발자park입니다.

짚으신 log내역: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'MainService' available

log내역에 MainService를 찾지 못하는 것으로 보입니다.

소스코드에는 문제가 없으신 걸로 보입니다만,

실행파일이 갱신이 안되는 것으로 보입니다.

[해결방법]

1.톰캣의 임시 실행파일을 제거해줍니다.

2.인터넷이 연결된상태에서 라이브러리를 강제로 업데이트 시켜줍니다.

  

OK클릭

image

 

3.다시 빌드해서 실행파일을 생성해줍니다.

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다. taeyoul.im님.

Spring을 사용하는 프로젝트에서 ‘No bean named ‘MainService’ available’ 오류는 보통 Spring 컨텍스트에서 해당 빈을 찾을 수 없음을 의미합니다. 이 문제는 주로 Spring에서 빈으로 등록해야 할 클래스를 등록하지 않았거나, 등록이 누락된 경우 발생합니다.

해결 방안:

  1. MainService 클래스의 어노테이션 확인:

    • MainService 클래스 위에 @Service 또는@Component 어노테이션이 있는지 확인하세요. 이러한 어노테이션은 Spring 컨텍스트에서 클래스를 빈으로 인식하게 합니다.
  2. 빈 등록 여부 확인:

    • context-config.xml이나 유사한 설정 파일에서 MainService 빈이 등록 되었는지 확인하세요. 빈 등록이 누락되었거나, 패키지 스캔 설정에서 누락되었을 수 있습니다.
  3. 패키지 스캔 설정 확인:

    • Spring 설정 파일에서 <context:component-scan> 태그가 정확히 설정되어 있는지 확인하세요. base-package에는 MainService가 포함된 패키지를 지정해야 합니다.
  4. 프로젝트 구조 및 의존성 확인:

    • 프로젝트 구조가 잘못되었거나, 의존성에서 주입을 위해 필요로 하는 라이브러리가 빠져 있는 경우도 문제를 유발할 수 있습니다. 필요하다면 Maven 또는 Gradle 파일을 통해 의존성을 점검하세요.

관련된 기존 질문 및 답변을 참고하여 문제 해결에 도움을 받을 수 있도록 아래 링크를 제공해 드립니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

taeyoul.im님의 프로필 이미지
taeyoul.im

작성한 질문수

질문하기