Java 8을 벗어나야할 때가 온건가?

3493 단어 SpringSpring


이 글의 목적?

나는 대부분의 프로젝트를 Java 8 버전으로 사용해왔다. 그러다 우연히 Java 11 이상으로 전환을 해야하는 글을 보게 되었다. 내가 읽은 글에서는 Java 8은 향후 몇 년 내에 더 이상 지원되지 않으며, Java 8 이후에 나온 버전들에는 새로운 기능이 추가되고 기능이 향상되었다고 한다.

성장할 줄 아는 개발자라면 시대의 흐름에 따라가는 것도 중요하기에 Java 11로 갈아타볼까 했다. 하지만 소프트웨어 업데이트를 했을 때 기존에 잘 동작하던 프로그램들이 말썽을 일으키는 것 처럼, 버전업을 했을 때 기존에 작업해온 것들에 영향을 미칠 것 같아서 여러 버전을 설치하고 상황에 맞게 사용해보고자 이 글을 작성하게 되었다.

설치하기 전에 부딪친 에러!

여러 버전을 설치하기 위해 homebrew를 이용하려했으나, 하단에 보이듯이 문제가 발생했다.

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

찾아보니 이번에 맥북을 업데이트를 하면서 "Xcode Command Line Tools" 이슈가 발생한것 같다. 이 경우에는 "xcode cli" 만 설치하면 간단히 해결할 수 있다.

$ xcode-select --install

JDK 8, 11 설정하기!

# homebrew 업데이트
$ brew update

# adoptopenjdk/openjdk 추가
$ brew tap adoptopenjdk/openjdk

# JDK 찾기
brew search jdk

# JDK 8, 11 설치
brew install --cask adoptopenjdk8
brew install --cask adoptopenjdk11

# JDK 8, 11 설치 위치 확인
/usr/libexec/java_home -V

# Java 버전 확인
java --version

# 현재 사용중인 쉘 확인
$ echo $SHELL

# zsh 쉘일 경우
$ vi ~/.zshrc
---
# Java Path
export JAVA_HOME_08="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home"
export JAVA_HOME_11="/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home"

# Select Java version
export JAVA_HOME=$JAVA_HOME_08
# export JAVA_HOME=$JAVA_HOME_11
---

# 반영
$ source ~/.zshrc

이 글의 레퍼런스

좋은 웹페이지 즐겨찾기