That easy
늘 그렇듯이 새로운 프로젝트 설정을 맞춰주는 건 번거로운 일입니다. 서론은 이만 줄이고 바로 본론으로 들어가겠습니다.
JDK를 아직 안 받았다?
IntelliJ를 통해 JDK를 손쉽게 설치할 수 있습니다. File -> Project Structure
Platform Settings -> SDKs -> (+ 버튼) -> Download JDK를 통해 원하는 버전의 JDK를 다운로드합니다.
그 후, 같은 창에서 Project Settings -> Project를 통해 다운로드한 SDK로 설정합니다.
IntelliJ IDEA -> Settings...
Build, Execution, Deployment -> Build Tools -> Gradle -> Gradle JVM에서 해당 버전으로 변경합니다.
Build, Execution, Deployment -> Compiler -> Java Compiler -> Project bytecode version에서 버전을 맞춰줍시다.
터미널 설정
java -version
이제 터미널을 열고 명령어를 통해 현재 자바 버전을 확인합니다.
/usr/libexec/java_home -V
현재 설치되어 있는 JDK 버전을 확인합니다.
vim ~/.zshrc
vim으로 .zshrc 파일을 열어줍니다.
export JAVA_HOME=$(/usr/libexec/java_home -v 21.0.5)
그 후, 자바 경로를 설정하는 부분을 추가합니다.
source ~/.zshrc
설정 파일을 변경한 후, 바로 적용하기 위해서 source 명령어를 사용합니다.
다시 java -version을 실행해 보면 잘 적용이 된 것을 확인할 수 있습니다.
Test
그럼 이제 java 21 문법을 한번 맛볼 시간입니다. 아직은 21 버전의 문법에 익숙하지 않기 때문에 학습을 좀 해야 하겠지만, 21 버전에서는 case문과 관련된 큰 변화가 있었던 것으로 보입니다.
저 자바 코드는 java 8에서 실행되는 환경입니다. 개인적으로 코딩 테스트를 위해 알고리즘은 주로 java 8 버전을 사용하고 있습니다. 근데 저 코드를 실행하면 과연 실행이 될까요?
그렇지 않습니다. NPE가 발생합니다.
그래서 기존에는 switch문 밖에서 null 체크를 하며, switch문을 작성했습니다. 하지만 이제는 다르다! 자바 버전이 올라가면서 case문에서 람다식도 쓸 수 있게 되었고 바뀐 부분이 많긴 하지만, 21부터는 case문에 null을 쓸 수 있게 되었습니다.
이전에 프로젝트를 진행하면서 Spring Boot 버전에 맞게 자바 버전을 조절하기만 했지, 새로 업데이트된 내용들에 관해서는 많이 다뤄보지 못한 것 같습니다. 이번 기회에 새롭게 업데이트된 자바를 좀 깊게 알아봐야겠습니다.
+ 예전 게시글에서 프로젝트 설정 관련 내용을 적긴 했지만 환경변수 설정 관련해서는 적지 않은 것 같아 다시 업데이트 하였습니다.
'Study > Java' 카테고리의 다른 글
[Java] 직렬화(Serialization)와 역직렬화(Deserialization) (0) | 2024.11.17 |
---|---|
[Java] charAt과 substring에 long 타입 인덱스를 사용할 수 없는 이유에 관하여 (0) | 2024.11.10 |
[Java] HashSet과 HashMap 성능 차이 (0) | 2024.09.14 |
[Java] String 객체 생성법 탐구 (with String Pool) (0) | 2024.09.08 |
[Java] Stream 훑어보기 (0) | 2024.09.01 |