스프링 프로젝트를 하는 중 간혹 어떤 작업자가 JRE/JDK 버전 9 이상에서 사용 가능한 List.of()를 사용하고 다른 작업자들은 9 미만 버전을 이용하여 cannot find symbol List.of() 컴파일 오류가 발생하는 등의, 버전이 서로 다르게 설정되어 발생하는 문제가 적지 않게 일어난다. 어떤 옵션의 JRE/JDK 버전을 프로젝트 개발 표준에 따라 9 이상으로 설정해도 다른 곳에서 9 미만으로 설정된 곳이 있어 문제가 발생할 수 있으니 정말 번거롭지만 스프링 프로젝트를 시작할 때 다같이 프로젝트 요구 사항에 따라 관련된 모든 설정값을 설정하고 가는 것이 바람직하다.
다음은 인텔리제이 아이디어에서 JRE/JDK 버전 설정이 필요한 항목들이다. 여기에 너무 잘 정리되어 있어서 굳이 이 글을 작성해야 했나 싶기도 하다...
Settings > Build, Execution, Deployment > Build ToolsGradle > Gradle JVM: 항목 변경 Settings > Build, Execution, Deployment > Compiler > Java CompilerProject bytecode version: 항목 변경 Project Structure > Project Settings > ModulesSources > Language level 항목 변경Dependencies > Module SDK: 항목 변경Project Structure > Project Settings > Project SDK: 항목 변경Language level: 항목 변경Run/Debug Configurations> config 선택 > Server JRE: 항목 변경