api 프로젝트가 자바8버전으로 개발되어있고, 유지보수를 위해 인텔리제이 자바설정을 11에서 8로 변경해야하는 일이 발생했습니다.
인텔리제이 설정에서 SDK와 JRE을 변경해야했고, 다음과 같은 플로우로 해결했습니다.
참고로 gradle 버전도 현재 자바 버전이랑 호환되는지 여부를 확인해야합니다.
File -> Settings에 들어가거나 ctrl + alt + s를 눌려 설정창을 띄웁니다.
1. Build Tools -> Gradle에서 Gradle JVM을 변경합니다.
저는 JVM11에서 JVM8로 변경했습니다.
2. Compiler -> Java Compiler에도 자바 버전을 체크해야합니다.
자바 버전에 맞게 설정을 맞춰주시면 됩니다.
다음으로 File -> Project Structure...으로 진입합니다. 단축키는 ctrl + alt + shift + s 입니다.
3. ProjectSettings -> Project로 진입해서 SDK를 변경합니다.
저는 SDK11에서 SDK8로 변경했습니다.
이러한 방식으로 자바버전을 변경하여 구버전 자바로 개발된 프로젝트를 실행시킬 수 있었습니다.
참고로 저는 자바11에서 프로젝트를 실행시키니
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBContext
와 같은 에러가 발생했습니다.
https://luvstudy.tistory.com/61
JAXBContext 클래스가 자바11에서는 지원하지 않는다고 합니다.
스프링부트 의존성에 compile "javax.xml.bind:jaxb-api" 을 추가하면 된다고 합니다.
저의 경우는 의존성을 추가하니 또 다른 에러가 발생해서 그냥 자바 버전을 다운시키는 것으로 해결했습니다.
댓글