오류 코드
java: cannot access java.lang.Record
class file for java.lang.Record not found
발생 상황
- sync에서는 문제가 없으나, build시 발생
해결 방법
- Main Menu - File - Settings - Build, Execution, Deployment - Compiler - Java Compiler
- 해당 위치 모듈에서 Target bytecode 21로 변경
- 현 상황에서는 21이지만 버전에 따라 다를 수도 있음
해설
- java.lang.Record는 JDK 17 이상 버전부터 사용 가능함
- 프로젝트 설정으로 인해 Sync 등에서도 충분히 발생 가능함
- 위 상황에서 build에서만 발생하는 이유는 프로젝트 설정으로 JDK는 17으로 수정했지만 컴파일되는 파일(컴파일 타겟)의 JDK가 낮은 버전으로 설정되어서 발생
참고사항
해당 오류상황에서는 java.lang.Record로 발생했으나 다른 것으로도 발생할 수 있음