❗️ 에러 발생
mysql 세팅을 하는데 계속 에러가 발생했다.
cannot resolve class or package 'cj' dependencies도 제대로 설정했는데 왜 안될까???
계속 찾아보았다.
dependencies {
runtimeOnly 'com.mysql:mysql-connector-java'
}
🚀 해결법
그러다 발견했다.
바로 네이밍이 변경되었다.... 하..... 이러니 안되징
dependencies {
runtimeOnly 'com.mysql:mysql-connector-j'
}
❓ 원인 탐색
나는 스프링 부트 3.2.5를 사용한다. 해당 에러는 3.1.0 버전 부터 발생한다. 즉 3.1.0 미만 버전에서는 `mysql-connector-java`로 해도 정상적으로 동작한다는 소리이다.
실제로 스프링 부트 3.0.0 의 Dependency Versions 를 가보면 mysql은 아래와 같이 `mysql-connector-java`로 되어있다.
하지만 스프링 부터 3.1.0 부터는 `mysql-connector-java` dependency 자체가 없다. 즉 `mysql-connector-j`만 사용할 수 있다.
아래 스크린샷처럼 8.0.31 버전 부터 `mysql-connector-j`로 변경되었고 이전 네이밍도 같이 지원하다가 8.1.0 부터 지원을 끊어서 이전 네이밍은 사용하면 에러가 발생했던 것이었다.
📌 reference
https://dev.mysql.com/doc/relnotes/connector-j/8.0/en/news-8-0-31.html
https://shanepark.tistory.com/466
'정보' 카테고리의 다른 글
[Query dsl]hibernate.query.SemanticException : Could not interpret path expression (0) | 2024.05.21 |
---|---|
JIRA 이슈번호 자동으로 커밋메시지에 넣기 (0) | 2024.05.15 |
[Effective java] 🚀 item 13. clone 재정의는 주의해서 진행해라 (0) | 2024.04.17 |
[Effective java] 🚀 item 12. 항상 toString을 재정의하라 Always override toString (0) | 2024.03.31 |
[Effective java] Item 11 equals를 재정의하려거든 hashCode도 재정의하라 (0) | 2024.03.24 |