에러
[java.lang.RuntimeException: Failed to load driver class com.mysql.cj.jdbc.Driver in either of HikariConfig class loader or Thread context classloader]
증상
Spring Boot 기동 시 다음과 같은 에러가 납니다.
application-db.yml 설정 중에 문제가 있다고 합니다.
Property: spring.datasource.hikari.master.driver-class-name
Value: "com.mysql.cj.jdbc.Driver"
Origin: class path resource [application-db.yml] - 42:28
Reason: java.lang.RuntimeException: Failed to load driver class com.mysql.cj.jdbc.Driver in either of HikariConfig class loader or Thread context classloader
원인
해당 에러 발생 원인은 다음과 같습니다.
- MySQL Connector Java 라이브러리가 누락되었거나 버전이 올바르지 않습니다.
- Spring Boot 설정에 드라이버 클래스 이름이 잘못 설정되었습니다.
- 클래스 경로에 드라이버 클래스가 없습니다.
저의 경우, 1번 사항에 해당되었습니다.
Gradle에 라이브러리 등록 시 MySQL Connector Java 라이브러리를 Mariadb Java Client로 바꿨습니다.
그래서 MySQL Connector Java 라이브러리가 없었습니다.
관련 링크 : https://woopi1087.tistory.com/116
해결
MySQL Connector Java 대신 Mariadb Java Client를 사용했기 때문에
Mariadb Java Client에서 사용하는 Driver Class로 바꾸었습니다.
org.mariadb.jdbc.Driver
해당 부분은 다음과 같습니다.
### application.yml
...
spring:
datasource:
driver-class-name: org.mariadb.jdbc.Driver
...
'Spring' 카테고리의 다른 글
[Spring Boot] 에러 'Caused by: java.lang.RuntimeException: Driver com.mysql.cj.jdbc.Driver claims to not accept jdbcUrl' (0) | 2024.03.06 |
---|---|
[Spring Boot] Mybatis Sample (0) | 2022.02.05 |
[spring boot] JPA sample (0) | 2022.02.04 |
[Spring boot] SQL script 를 활용한 DB 초기화 (0) | 2022.02.03 |
[Spring Boot] H2DB JDBC연동 (0) | 2022.02.02 |