작성
·
1.6K
0
WARN 30752 --- [ restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Class org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider does not implement the requested interface jakarta.persistence.spi.PersistenceProvider
호환성 문제인지 뭐가 문제인지 잘모르겠네요..
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
승현님께서 말씀하신 오류는 Jakarta Persistence
와 Hibernate
관련한 호환성 문제로 보입니다. Spring Boot 2.5 이상에서는 Jakarta EE 9의 jakarta.*
네임스페이스를 사용하기 시작했는데, 에러 메시지로 보아 Hibernate JPA 구현체가 이를 요구하는 jakarta.persistence.spi.PersistenceProvider
인터페이스를 구현하고 있지 않는 것으로 보입니다.
문제를 해결하기 위해 다음과 같은 접근을 시도해보실 수 있습니다.
build.gradle
또는 pom.xml
에 있는 Hibernate 관련 의존성이 최신 버전인지 점검하세요.혹시 persistence.xml
설정파일을 사용하시는 경우, HibernateJpaPersistenceProvider
대신 SpringHibernateJpaPersistenceProvider
를 사용하도록 확인해보세요.
또한, Spring Boot의 자동 설정 기능으로 인해 entityManagerFactory
빈이 잘못 구성되었을 수도 있으니, Spring Data JPA 설정이 올바른지도 확인하는 것이 좋을 것 같습니다. 에러가 발생한 entityManagerFactory
에 대한 자세한 설정 방법은 아래의 Spring Boot 공식 문서를 참조해보세요.
Spring Boot Reference Documentation - JPA & Spring Data JPA
이 외에도, 문제가 해결되지 않으면, 추가적인 스택 트레이스(logs)나 설정 파일(application.properties
또는 application.yml
)과 함께 구체적인 질문을 Stack Overflow에 spring-boot
태그를 달아 질문하시는 것도 좋은 방법입니다.
그럼 해결하시는데 도움이 되었길 바랍니다!