728x90
반응형
Spring boot + kotlin 프로젝트에서 JPA를 사용할때 아래와 같은 에러가 발생했습니다.
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'vehicleRepository' defined in com.exam.repository.VehicleRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: kotlin/reflect/full/KClasses
해당 에러 메시지는 Spring Boot 애플리케이션에서 vehicleRepository 빈을 생성하는 중에 문제가 발생했음을 나타냅니다. 특히, kotlin/reflect/full/KClasses와 관련된 문제입니다. 이 문제는 종종 Kotlin 리플렉션 라이브러리가 누락되었거나 호환되지 않는 버전이 사용되었을 때 발생합니다.
원인 분석
해당 에러의 주요 원인은 다음과 같습니다:
- Kotlin 리플렉션 라이브러리 누락: Spring Data JPA와 같은 기능을 사용하기 위해서는 kotlin-reflect 라이브러리가 필요합니다.
- 의존성 버전 불일치: kotlin-reflect 라이브러리의 버전이 프로젝트의 Kotlin 버전과 호환되지 않을 수 있습니다.
해결 방법
문제를 해결하기 위해 프로젝트의 build.gradle.kts 파일에 kotlin-reflect 의존성을 추가합니다
implementation("org.jetbrains.kotlin:kotlin-reflect:1.9.20")
버전은 kotlin의 버전과 동일한 버전으로 하면 됩니다.
plugins {
kotlin("jvm") version "1.9.20"
}
이렇게 설정하면 kotlin-reflect 라이브러리가 올바르게 추가되어 JPA 관련 오류를 해결할 수 있습니다.
728x90
반응형
'개발 > kotlin' 카테고리의 다른 글
JSON을 Kotlin DTO로 변환하는 방법 - Kotlinx.Serialization 활용 가이드 (0) | 2024.08.02 |
---|---|
object, companion object, 최상위 함수 정리 (0) | 2024.07.06 |
[라이브러리] [Proj4J] 좌표계 변환 방법 (0) | 2024.07.04 |
[kotlin] ByteArray를 Int, Int를 ByteArray로 변경하는 방법 (0) | 2024.05.29 |