증상
Java 8을 기본으로 개발을 해오고 있다. 그러다가 외부 교육을 할 기회가 있었는데, 이 때 교육생들은 대부분 윈도우즈를 사용하고 있었고, 나와는 다르게 오라클 Java Download 환경에서 11 혹은 10 버전을 설치운영하고 있었다.
Java 10 실행환경에서 스프링 부트 프로젝트를 실행하면 Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException 가 발생한다.
JAVA 9부터 빠진 기능들이 있다.
http://openjdk.java.net/jeps/320
java.xml.ws
(JAX-WS, plus the related technologies SAAJ and Web Services Metadata)java.xml.bind
(JAXB)java.activation
(JAF)java.xml.ws.annotation
(Common Annotations)java.corba
(CORBA)java.transaction
(JTA)
대충 살펴보면 XML 과 관련된 모듈이 분리됐다.
해결방법
프로젝트 의존성 내에 compile "javax.xml.bind:jaxb-api" 을 추가한다.
스프링 부트에서는 의존성 관리기능을 통해 jaxb-api 버전을 관리하고 있기 때문에 굳이 버전을 신경쓰지 않아도 된다.
'Java > SpringBoot' 카테고리의 다른 글
[springboot] JUnit 5 적용기 (0) | 2018.10.18 |
---|---|
[springboot] 스프링 부트 빌드 플러그인 (0) | 2018.10.15 |
[springboot] T Acacemy 교육자료 3/3:: 스프링 부트로 웹 서비스 개발하기 (0) | 2018.09.27 |
[springboot] T Acacemy 교육자료 2/3:: 스프링 프로젝트 만들기: Getting started - Spring Boot (0) | 2018.09.27 |
[springboot] T Acacemy 교육자료 1/3:: 스프링 부트 소개 Boot Spring Boot (0) | 2018.09.27 |