자바 8을 이용한 스프링 부트 프로젝트를 자바9 혹은 자바 11과 같은 상위 버전으로 업그레이드 했을 때 다음과 같은 오류가 발생했다.

원인은?

  • Java 8 -> Java 9 버전업 시 해당 모듈이 제거됨
  • Java SE 9: JAXB API를 Java EE API로 간주해 기본 클래스 경로에 포함하지 않음
  • Java 11: JAXV API를 JDK에서 아예 제거

해결방법

  • pom.xml에 다음과 같이 추가하면 해결
      <dependency>
          <groupId>javax.xml.bind</groupId>
          <artifactId>jaxb-api</artifactId>
          <version>2.3.0</version>
      </dependency>
    
  • 참고로 Gradle 빌드 시엔 다음과 같이 추가

      implementation 'javax.xml.bind:jaxb-api:2.3.0'
    



References

Leave a comment