1. 문제 상황
프로그램을 컴파일하고 실행할 때, 아래와 같은 오류가 발생하였다.
An exception occured while executing the Java class. java.lang.UnsupportedClassVersionError: org/openjdk/nashorn/api/scripting/NashornScriptEngineFactory has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
2. 문제점
현재 java version과 사용하려는 라이브러리가 호환하는 java version이 맞지 않아서 발생하고 있는 문제였다.
위 문제와 같은 경우는 사용중인 java version이 라이브러리가 호환 가능한 최소 java version보다 낮아서 발생하고 있는 상황이다.
PC에서 사용중인 java version은 8 버전인데, 라이브러리 컴파일된 자바 버전은 11이다.
중요한 점은 라이브러리를 사용한 코드를 어플리케이션에 사용하지 않고 maven / gradle에 해당 라이브러리를 포함해도 발생한다는 것이다.
관련 라이브러리에서 내부적으로 더 높은 라이브러리를 사용해서 문제가 발생한 것으로 추측된다.
3. 해결 방법
maven / gradle에 해당 라이브러리를 삭제하면 문제는 해결된다.
4. 배운점
의존성을 다운로드하려고 할 때에도 주의 깊게 하자.