Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 개발자
- 티스토리챌린지
- serverless
- 오블완
- goorm
- backenddeveloper
- CICD
- aws
- DynamoDB
- codebuild
- ec2
- Redis
- codedeploy
- 스터디
- 자격증
- CodeCommit
- sqs
- s3
- 백엔드
- backend
- Docker
- spring
- kakao
- MSA
- rds
- Spring Boot
- orm
- QueryDSL
- mapping
- jpa
Archives
- Today
- Total
gony-dev 님의 블로그
[RDS] Failed to determine a suitable driver class 본문
구름x카카오 부트캠프 프로젝트를 진행하던 도중, 의존성 주입을 하고 실행 테스트를 해보는 과정에서
난데 없는 오류가 발생하여 삽질을 하였기에 이를 기록해보겠다.
다음은 account-service 모듈 실행 오류이다.
📌 Trouble
- "Failed to determine a suitable driver class"라는 말과 함께 오류가 발생하였다.
- 내용을 보면 알겠지만 import하는 데이터베이스의 url을 표시하라는 문구이다.
하지만 나는 mongoDB를 사용하기 때문에 이에 관한 설정은 해놓은 상태이다. 그럼에도 오류가 발생하는 이유가 뭘까?
하나씩 살펴보도록 하자.
먼저 account-service에 대한 설정은 다음과 같다.
build.gradle
application.yml
위의 application.yml은 Config 서버에 담겨있는 내용들로 연동은 잘 되는 것으로 확인을 했다.
사실 이미 2개의 캡쳐본 안에 오류가 담겨있다.
📌 Shooting
사실 url에 대한 오류보다는 그 밑에 있는 오류를 눈여겨 보아야한다.
"Failed to determine a suitable driver class"
- 위 내용은 적절한 드라이버를 적용하지 못했다는 오류로 JPA dependency가 추가된 상태에서 mongoDB dependency까지 추가되어 데이터베이스 충돌이 발생한 것이었다.
- 정확히 말하자면 두 개의 데이터 소스를 사용할 수 있지만 이에 대한 설정이 잘못되어 충돌이 발생한 것이었다.
해결 방안
두 가지 경우에 따라 달리 해결할 수 있다.
1. 두 개의 드라이버를 사용하기
2. mongoDB를 사용하기
사실 이 두 가지 모두 해결방안은 같기에 1번의 경우를 이행해보겠다.
말 그대로 두 데이터베이스의 드라이버를 설정해주면 된다. 그렇게 되면 application.yml은 다음과 같이 설정된다.
application.yml
# jpa 설정
spring:
datasource:
url: jdbc:mysql://localhost:3306/db
driver-class-name: com.mysql.cj.jdbc.Driver
data:
mongodb:
uri: mongodb://localhost:27017/db
만일 jpa datasource에 대한 설정이 필요없다면
# jpa 설정
spring:
datasource:
initialize: false
data:
mongodb:
uri: mongodb://localhost:27017/db
"initialize"를 통해 설정하지 않겠다는 구문을 명시해야만 한다.
'TroubleShooting' 카테고리의 다른 글
[Trouble Shooting] Restricted Identifier (0) | 2024.12.04 |
---|---|
[Spring] Page Interface의 직렬화 (2) | 2024.11.14 |