기존 Eclipse + Spring + Maven프로젝트를
IntelliJ + Spring Boot + Gradle 프로젝트로 변환하는 작업 중
repository Bean 등록 중 에러가 발생했다.
기존 프로젝트에서는 문제 없이 작동했던 repo였기 때문에
문제 원인이 Spring Boot, Gradle에 있을 것이라 판단했다.
그래도 일단 GPT에 물어본 결과
repository에 적절한 어노테이션이 적용되지 않아 생긴 문제라는 답변을 해줘서
@Mapper 어노테이션을 적용해봤으나 여전히 같은 문제가 발생했다.
그 후 application.properties와 mybatis-config에 오타가 있는지, 누락된 설정은 없는지 체크했으나
그 어디에도 문제가 없었다...!
그래서 차분히 로그에 출력된 에러 메시지를 구글링해본 결과
스프링 부트 버전과 맞지 않은 MyBatis 스타터 버전을 사용하면 에러가 발생할 수 있다는 것을 알게 되었고
# 수정 전
implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.2'
# 수정 후
implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.3'
버전을 살짝 변경해 주니 정상적으로 서버가 실행되었다!
1. 세심한 로그 분석의 중요성
에러 메시지에서 중요한 부분이 무엇인지 제대로 포착하는게 중요하다는 것을 알았다
처음부터 얕은 지식으로 어림짐작하여 "여기서 에러가 발생했을거야" 판단하지 않고
에러 메시지를 차근차근 뜯어보면서 어디가 문제일지 생각했으면
문제를 더 빨리 해결 할 수 있었을 것이다.
2. 환경 변경 시 의존성 버전 호환성 체크
프로젝트 환경을 변경할 때는 반드시 의존성 버전 호환성을 점검해야 함을 알았다.
내 상황처럼 스타터 버전이 맞지 않으면 예상하지 못한 오류가 발생할 수 있기 때문에
반드시 호환성 정보를 확인해야 한다....!
3. 기존 프로젝트에서 웹소켓이 연결되지 않았던 이유가 버전이 맞지 않아 발생했을 가능성이 높은듯?
| 영속성 컨텍스트 문제를 DTO로 해결 (0) | 2025.01.23 |
|---|---|
| GitHub 연동 오류 (0) | 2024.11.24 |
| java.lang.IllegalStateException - Spring MVC에서 발생한 변환 오류의 원인과 해결 방법 (0) | 2024.10.30 |
| 413 Request Entity Too Large - Nginx (0) | 2024.10.26 |
| contact.do로 제대로 이동하지 않았던 이유 (0) | 2024.06.07 |