• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

java 17에서 Hibernate 사용오류

23.08.04 04:10 작성 조회수 1.01k

1

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)

[질문 내용]
제가 Java 17 버전을 사용하고 있는데,
Hello JPA 애플리케이션 개발에 나오는 코드 작성시
Hibernate 에 대해서 properties 오류가 생기는 것으로 보여서 db안에 member의 정보가 들어가지 않습니다.

오류 코드는 다음과 같습니다.

03:54:44.367 [main] INFO org.hibernate.Version -- HHH000412: Hibernate Core {5.3.10.Final}
03:54:44.368 [main] INFO org.hibernate.cfg.Environment -- HHH000206: hibernate.properties not found

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException


해결을 위해서 검색해보면서
application.properties

# Hibernate 설정
spring.jpa.properties.hibernate.ejb.metamodel.population=disabled
spring.jpa.properties.hibernate.transaction.coordinator_class=jdbc
spring.jpa.properties.hibernate.javax.persistence.validation.mode=none
spring.jpa.properties.hibernate.javax.xml.bind.JAXBContextFactory=org.eclipse.persistence.jaxb.JAXBContextFactory

위와 같은 코드를 추가하고

pom.xml에 아래와 같은 코드를 추가해보았습니다.

  <!-- Jakarta XML Binding (JAXB) 의존성 -->
        <dependency>
            <groupId>jakarta.xml.bind</groupId>
            <artifactId>jakarta.xml.bind-api</artifactId>
            <version>3.0.1</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jaxb</groupId>
            <artifactId>jaxb-runtime</artifactId>
            <version>3.0.1</version>
        </dependency>

 

그러나 해결되지 않아서 질문 남깁니다.
자바 버전을 내리는 것 말고는 해결 방법이 없을까요?

답변 1

답변을 작성해보세요.

8

권진혁님의 프로필

권진혁

질문자

2023.08.04

pom.xml 에 아래와 같은 의존성을 추가

<!-- Java 9 이상을 지원하는 JAXB API 라이브러리 -->
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.1</version>
</dependency>

이후 실행시 정상적으로 작동되었습니다.

감사합니다.