오늘 개발 공부를 하다가 인텔리제이에서 이상한 문구를 뱉어내기 시작했습니다.

이거는 인텔리제이 jdk 버전 세팅이 뭔가 꼬여서 그런 겁니다.
저 같은 경우는 프로젝트 폴더에서 .idea 폴더를 실수로 지운 적이 있는데
그때 뭔가 꼬여버린 거 같습니다.
지금부터 고치는 방법을 알아보겠습니다.
✔ ctrl + shift + alt + s 를 입력해서 Project Structure 팝업을 엽니다.
✔ 팝업 좌측 메뉴에서 Project Settings > Project 를 클릭하고 아래처럼 세팅합니다.
SDK @since ??+ 문구에 나온 ?? 버전보다 높거나 같은 jdk 버전 선택@since 15+ 라고 나와서 jdk 17 로 세팅Language Level : SDK default 로 지정✔ 팝업 좌측 메뉴에서 Project Settings > Modules 를 클릭하고 아래처럼 세팅합니다.
Language Level 을 앞서 지정했던 jdk 버전과Project default 로 설정해도 됩니다.✔ ctrl + alt + s 를 눌러서 Settings 창을 열어주고, Java Compiler 라는 메뉴 버튼을 클릭합니다. 그리고 나서 Target bytecode version 선택창에서 앞서 지정했던 jdk 버전과 똑같이 맞춰줍니다.

pom.xml 에서 java version 도 알맞게 적용해야겠죠?

PS: 이 글에서 사용되는 예시 프로젝트는
Spring boot기반 프로젝트여서
위 그림처럼<java.version>태그만 설정해주면 됩니다.
하지만 혹여 자신이 spring boot 를 쓰는 환경이 아니면 아래처럼 설정하셔야 합니다.<properties> <java.version>8</java.version> <maven.compiler.source>${java.version}</maven.compiler.source> <maven.compiler.target>${java.version}</maven.compiler.target> <!-- 참고로 아래처럼 인코딩도 설정도 해주면 좋습니다! --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties>
그리고 정말 주의할 게 pom.xml 파일에 있는 <plugins> 태그 내부에
maven-compiler-plugin 태그가 있고, 그 안에 버전 정보가 적혀있을 수 있습니다.

이건 앞서 <properties> 태그 내에서 지정했던 jdk 버전을 무시해버리고
자기들이 지정한 jdk 버전을 적용시켜 버립니다.
그러므로 maven-compiler-plugin 플러그인 부분은 주석처리를 해줍시다.
이후에는 꼭 Maven Update 버튼을 클릭해줍니다.

추가적으로 기존에 잘못된 버전으로 컴파일, 빌드된 파일들이 문제가 될 수 있으므로,
maven clean 까지 해줍시다.
intellij 에서 ctrl 을 2번 연타하면 Run AnyThing 이라는 명칭의
팝업이 나옵니다. 해당 팝업의 입력란에 아래와 같이 입력하고 Enter 를 칩니다.
mvn clean

끝!