에러 메시지
Spring Boot 2.7.8로 업그레이드하는 경우 mysql-connector-java 종속성을 찾을 수 없기 때문에 오류가 표시될 수 있습니다.
구성:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.14</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
에러 메시지:
[INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[ERROR] 'dependencies.dependency.version' for mysql:mysql-connector-java:jar is missing. @ line 54, column 15
@
[ERROR] The build could not read 1 project -> [Help 1]
이유
이는 mysql-connector-java가 더 이상 Spring Boot 2.7.8의 종속성 관리에 의해 관리되지 않기 때문입니다.
릴리스 v2.7.8 · spring-projects/spring-boot · GitHub
다루다
mysql의 기존 groupId: mysql-connector-java는 오랫동안 "mysql"이라는 단일 단어로 유지되어 온 레거시 형식입니다.
https://blogs.oracle.com/mysql/post/mysql-connectorj-has-new-maven-coordinates
두 가지 버전 8.0.31(2022년 10월 14일 출시) 및 8.0.32(2023년 1월 18일 출시)는 각각 mysql-connector-java/mysql-connector-j와 병렬로 유지 관리됩니다. Boot 2.7.8은 이번 봄에 출시되었으며 그 이후로 mysql:mysql-connector-java는 종속성 관리에서 제거되었습니다.
따라서 이제부터 com.mysql:mysql-connector-j 종속성을 사용할 수 있습니다.
Spring Boot 2.7.8부터 mysql:mysql-connector-java -> com.mysql:mysql-connector-j를 변경하고 mysql-connector-java 종속성 관리를 삭제합니다.
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>