Cannot load driver class: org.mariadb.jdbc.Driver 오류는
MariaDB JDBC 드라이버를 찾을 수 없을 때 발생하는 문제입니다.
해결 방법
mariadb-java-client 의존성이 pom.xml에 추가되었는지 확인
MariaDB 드라이버가 Maven 의존성에 포함되지 않았거나 누락되었을 수 있습니다. pom.xml에서 올바른 버전의 MariaDB 드라이버가 추가되었는지 확인하세요.
pom.xml 확인 및 수정
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<scope>runtime</scope>
</dependency>
- scope를 **runtime**으로 설정하면, 실행 시점에만 드라이버가 로드됩니다.
- scope를 아예 제거하면 빌드 시에도 포함됩니다.
Maven을 다시 빌드
mvn clean install
spring.datasource.driver-class-name 설정 확인
application.properties 또는 application.yml에서 JDBC 드라이버 클래스명이 정확한지 확인하세요.
application.properties
spring.datasource.url=jdbc:mariadb://localhost:3306/your_database
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
application.yml (YAML 사용 시)
spring:
datasource:
url: jdbc:mariadb://localhost:3306/your_database
username: your_username
password: your_password
driver-class-name: org.mariadb.jdbc.Driver
클래스명 org.mariadb.jdbc.Driver가 정확한지 확인!
오타가 있거나 spring.datasource.driver-class-name이 누락되면 오류가 발생할 수 있습니다.
Maven 캐시 삭제 후 재빌드
의존성이 정상적으로 다운로드되지 않았을 수도 있습니다. 로컬 캐시를 삭제하고 다시 빌드하세요.
Maven 캐시 삭제
mvn clean
mvn dependency:purge-local-repository
mvn install
또는 STS (Spring Tool Suite)에서 Maven Update 수행
- 프로젝트 우클릭 → Maven → Update Project (Alt + F5)
JDK 버전 확인
MariaDB JDBC 드라이버는 JDK 8 이상을 필요로 합니다.
사용 중인 Java 버전을 확인하세요.
Java 버전 확인
java -version
pom.xml에서 올바른 Java 버전 설정
<properties>
<java.version>17</java.version>
</properties>
- 사용 중인 Java 버전과 pom.xml의 <java.version>이 동일해야 합니다.
MyBatisConfig의 driver-class-name 설정 확인
만약 MyBatisConfig에서 DataSource를 직접 설정하는 경우, 드라이버 클래스를 명시적으로 추가해야 합니다.
MyBatisConfig 수정
@Bean
public DataSource dataSource() {
HikariDataSource dataSource = new HikariDataSource();
dataSource.setJdbcUrl(url);
dataSource.setUsername(username);
dataSource.setPassword(password);
dataSource.setDriverClassName("org.mariadb.jdbc.Driver"); // 드라이버 명시적으로 추가
dataSource.setMaximumPoolSize(10);
return dataSource;
}
최종 해결 절차
1. pom.xml에 mariadb-java-client 추가 및 mvn clean install 실행
2. spring.datasource.driver-class-name=org.mariadb.jdbc.Driver 설정 확인
3. Maven 캐시 삭제 후 다시 빌드 (mvn dependency:purge-local-repository)
4. JDK 버전 확인 (JDK 8 이상)
5. MyBatisConfig에서 dataSource.setDriverClassName("org.mariadb.jdbc.Driver") 명시적 설정
'무한루프 > 개발, 업무' 카테고리의 다른 글
엑셀 스네이크표기법 -> 카멜표기법 문자열 변환 함수 (0) | 2025.03.01 |
---|---|
Java API에서 return 값의 형태 선택(DTO, Map, ResponseEntity) (0) | 2025.02.28 |
DTO와 VO의 차이 (0) | 2025.02.28 |
MS-SQL 기본 정보 및 환경 (0) | 2025.02.26 |
스프링부트(spring boot)에서 메이븐 클린(maven clean) 하는 법 (0) | 2025.02.26 |