MacOS에 Homebrew로 Java 11 설치하기

2023. 3. 31. 19:53DEV/Mac

반응형

Android SDK를 인증하기 위해서는 Java가 설치되어 있어야 해서 Flutter 문서에서 확인해 보니 Java 11을 설치해야 하더군요.

🔗 Agree to Android Licenses
💡 Make sure that you have a version of Java 11 installed and that your JAVA_HOME environment variable is set to the JDK’s folder.

Android Studio versions 2.2 and higher come with a JDK, so this should already be done.

 

설치

Homebrew로 Java의 특정 버전을 설치하는 방법은 아주 간단합니다. openjdk뒤에 원하는 버전을 붙이면 되더라구요.

Java 11 버전과 Java 8 버전을 검색한 결과예요. 둘 다 Formulae에 openjdk@11과 openjdk@8이 있는 걸 확인할 수 있어요.

% brew search openjdk11
==> Formulae
openjdk@11                 openjdk                    openjdk@17                 openjdk@8

==> Casks
openttd

$ brew search openjdk8 
==> Formulae
openjdk@8                  openjdk                    openjdk@11                 openjdk@17

==> Casks
openttd

명령어를 찾았으니 바로 Java 11을 설치합니다.

% brew install openjdk@11
==> Downloading https://formulae.brew.sh/api/formula.jws.json
######################################################################## 100.0%
==> Fetching dependencies for openjdk@11: giflib, libpng, freetype, fontconfig, pcre2, gettext, glib, xorgproto, libxau, libxdmcp, libxcb, libx11, libxext, libxrender, lzo, pixman, cairo, graphite2, icu4c, harfbuzz, jpeg-turbo, lz4, xz, zstd, libtiff and little-cms2
==> Fetching giflib

......

==> Installing openjdk@11
==> Pouring openjdk@11--11.0.18.arm64_ventura.bottle.tar.gz
==> Caveats
For the system Java wrappers to find this JDK, symlink it with
  sudo ln -sfn /opt/homebrew/opt/openjdk@11/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-11.jdk

openjdk@11 is keg-only, which means it was not symlinked into /opt/homebrew,
because this is an alternate version of another formula.

If you need to have openjdk@11 first in your PATH, run:
  echo 'export PATH="/opt/homebrew/opt/openjdk@11/bin:$PATH"' >> ~/.zshrc

For compilers to find openjdk@11 you may need to set:
  export CPPFLAGS="-I/opt/homebrew/opt/openjdk@11/include"
==> Summary
🍺  /opt/homebrew/Cellar/openjdk@11/11.0.18: 667 files, 295.3MB
==> Running `brew cleanup openjdk@11`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Caveats
==> openjdk@11
For the system Java wrappers to find this JDK, symlink it with
  sudo ln -sfn /opt/homebrew/opt/openjdk@11/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-11.jdk

openjdk@11 is keg-only, which means it was not symlinked into /opt/homebrew,
because this is an alternate version of another formula.

If you need to have openjdk@11 first in your PATH, run:
  echo 'export PATH="/opt/homebrew/opt/openjdk@11/bin:$PATH"' >> ~/.zshrc

For compilers to find openjdk@11 you may need to set:
  export CPPFLAGS="-I/opt/homebrew/opt/openjdk@11/include"

설치가 완료되면 새 터미널을 열어 java -version 으로 Java가 잘 설치됐는지 확인합니다.

symlink 설정 및 설치 확인

만약 새 터미널을 열었는데도 Java를 인식하지 못한다면 symlink 설정을 해줍니다.

설치할 때 출력되는 내용 중 For the system Java wrappers to find this JDK... 에서 시스템이 찾을 수 있도록 symlink를 설정하라는 대로 명령어를 실행합니다. 그리고 다시 java -version 으로 확인해 보면 이제 시스템에서 정상적으로 Java를 인식하고 있는 것을 확인할 수 있습니다.

### symlink 설정
% sudo ln -sfn /opt/homebrew/opt/openjdk@11/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-11.jdk
Password:

### Java 버전 확인
% java -version
openjdk version "11.0.18" 2023-01-17
OpenJDK Runtime Environment Homebrew (build 11.0.18+0)
OpenJDK 64-Bit Server VM Homebrew (build 11.0.18+0, mixed mode)

끝이에요. 이제 다음 설정을 하면 됩니다.

 

개발 환경 설정하기

💡 MacOS에 Flutter 개발 환경 세팅하기 - feat. Homebrew에서 전체 설치 방법을 확인하실 수 있습니다.
  • Xcode, iOS Simulator
  • Homebrew
  • iTerm2
  • Visual Studio Code
  • Flutter
  • CocoaPods
  • Java
  • Android Studio, Android SDK, Android Emulator
반응형