Java/환경설정

[Java] MacOS 환경에서 Java JDK 설정 및 변경하기 : homebrew, 다운로드 파일

adjh54 2023. 6. 28. 23:52
728x170
해당 환경에서는 MacOS 환경에서 Java JDK를 변경하는 방법에 대해서 공유합니다. 해당 글에서는 Java JDK 11 버전에서 Java JDK 17 버전으로 올리는 작업 위주로 작성하였습니다.




1) 자바 JDK 버전 확인


💡 현재 Java JDK 11 버전임을 확인하였습니다.

# java version 확인
$ java --version

 

💡 [참고] Java JDK 버전 및 LTS 버전에 대해 궁금하시면 아래의 글을 참고하시면 도움이 됩니다
 

[Java] JDK(Java Development Kit), Open JDK 이해하기

해당 글에서는 Java에서 사용되는 JDK(Java Development Kit), Open JDK에 대해 이해를 돕기 위해 작성한 글입니다. 1) Java 1. Java Version 💡 2023년 6월 기준 Java 버전에 대해서 확인해 봅니다. Version LTS 출시 일

adjh54.tistory.com

 
 
 

2) 자바 JDK 버전 변경 방법 -1 : homebrew를 이용한 방법


💡 MacOS에서 ‘homebrew’를 통해서 자바 JDK를 변경하는 방법에 대해서 공유합니다.

 
 

1.  Java JDK 16 이하 버전을 설치하는 경우에만 아래의 명령어를 수행합니다.


💡 Java JDK 16 이하를 설치하는 경우에는 cask를 이용하여서 설치를 수행합니다.
# 서드파티 저장소에 adoptopenjdk/openjdk를 저장합니다.
$ brew tap adoptopenjdk/openjdk

#  macOS 운영체제에서 애플리케이션을 설치하고 관리하는 데 사용되는 명령어를 설치합니다.
$ brew install cask

 

 [ 더 알아보기 ]

💡brew tap이란?

- 사용자가 다른 레포지토리를 등록하고 해당 레포지토리에서 패키지를 설치할 수 있도록 지원합니다. 즉, 사용자가 별도의 저장소 공간을 등록하여 사용할 수 있도록 합니다.

💡brew cask 란?

- macOS에서 사용할 수 있는 앱과 프로그램을 설치, 업그레이드, 관리할 수 있습니다. brew cask를 사용하면 GUI 애플리케이션도 CLI에서 쉽게 설치할 수 있습니다.

 
 
 

2. 설치 가능한 OpenJDK를 확인합니다.


💡 해당 명령어를 통해서 설치 가능한 OpenJDK를 확인합니다.

# 설치 가능한 OpenJDk를 확인합니다 
$ brew search openjdk

 
 
 

3. 터미널에 JDK를 설치합니다.


3.1. Java 16 이하 버전을 설치하는 경우

# java jdk 8 버전 설치
$ brew install --cask adoptopenjdk8

# java jdk 11 버전 설치
$ brew install --cask adoptopenjdk11
[ 더 알아보기 ]

💡 adoptopenjdk17 버전이 존재하지 않는 이유는?

- AdoptOpenJDK는 2021년 07월 24일 OpenJDK 16 버전 이후로는 ‘Eclipse Adoptium’로 이전하였다고 합니다.
- 참고 링크 : https://adoptopenjdk.net/releases.html?variant=openjdk16&jvmVariant=hotspot

 
 
 

3.2. Java JDK 17 이상 버전을 설치하는 경우

# java jdk 17 버전 설치
$ brew install openjdk@17

 

 

openjdk@17

Homebrew’s package index

formulae.brew.sh

 
 

[ 더 알아보기 ]

💡 adoptopenjdk8와 openjdk@8의 차이점은 무엇인가?

- 두 가지 패키지의 서로 다른 점은 각각 다른 단체에서 유지보수가 되고 있다는 점입니다. adoptopenjdk8의 경우 AdoptOpenJDK에서 유지보수를 하고 openjdk@8의 경우 Homebrew에서 유지보수합니다

 
 
 

4. 현재 사용중인 쉘을 확인합니다.


💡 사용 중인 쉘에 따라서 추후 환경파일을 수정합니다.
$ echo $SHELL

 
 
 

💡 [참고] 쉘의 종류
쉘의 종류  echo $SHELL  설명
Bash (Bourne-Again SHell) /bin/bash macOS에서 기본적으로 제공되는 쉘입니다.
Zsh (Z Shell) /bin/zsh macOS Catalina 이후에서는 기본 쉘로 사용되고 있습니다.

 
 

5. 환경 파일 수정 : zshell을 사용하는 경우


5.1. 설치된 openjdk@17의 정보를 가져옵니다.

# brew로 설치된 앱에 대한 정보를 가져옵니다.
$ brew info openjdk@17

 
 

5.2. 활성화 된 JDK를 확인합니다.

# 현재 활성화 된 Java JDK 확인
$ /usr/libexec/java_home -V

 
 

5.3. zshrc 환경 파일을 변경합니다.

💡 zshrc 환경 파일을 변경하고 변경 사항을 저장합니다.
# 에디터로 zshell 환경 설정 파일을 엽니다
$ vi ~/.zshrc

 
 

# Java JDK
export JAVA_HOME_11=$(/usr/libexec/java_home -v11)
export JAVA_HOME_17=$(/usr/libexec/java_home -v17)

export JAVA_HOME=$JAVA_HOME_11
#export JAVA_HOME=$JAVA_HOME_17

 

💡 환경 파일을 적용합니다.
# 환경 파일을 적용합니다.
$ source ~/.zshrc

 

 
 
 

6. 환경 파일 수정 : bash을 사용하는 경우


 

6.1. 설치된 openjdk@17의 정보를 가져옵니다.

# brew로 설치된 앱에 대한 정보를 가져옵니다.
$ brew info openjdk@17

 
 
 
 

6.2. bash_profile 내에 JAVA_HOME을 수정합니다

# bash 환경 파일에 접근합니다.
$ vi ~/.bash_profile

# JAVA_HOME 경로를 위에서 가져온 정보를 기반으로 붙여넣고 추가 정보를 입력합니다.
JAVA_HOME=/usr/local/Cellar/openjdk@17/17.0.7/Contents/Home

 

 💡 JAVA_HOME path를 가져오는 방법
# 설치된 자바 버전을 확인합니다.
$ /usr/libexec/java_home -V

 
 
 

6.3. bash를 갱신하고 설치를 확인하여 적용이 잘됨을 확인합니다.

 

# bash를 시스템 환경에 반영합니다.
$ source ~/.bash_profile

# java 버전을 확인합니다
$ java --version

 
 
 
 
 
 
 
 

 
 

3) 자바 JDK 버전 변경 방법 -2 : 다운로드 파일 적용


💡 해당 부분에서는 JDK를 다운로드하여서 적용하는 방법에 대해서 공유합니다.

 
 

1. 참고


💡 Spring Boot 공식 홈페이지에서 17 버전 사용 시 Java JDK 17 버전에서는 ‘BellSoft Liberica JDK Version 17’을 추천하고 있기에 이에 대해 적용해 봅니다.

 

 

Spring | Quickstart

Spring Quickstart Guide What you'll build You will build a classic “Hello World!” endpoint which any browser can connect to. You can even tell it your name, and it will respond in a more friendly way. Step 1: Start a new Spring Boot project Use start.s

spring.io

 
 

2. JDK를 다운로드합니다.


💡 BellSoft Liberica JDK version 17 버전으로 다운로드를 합니다.
 

Download Java | Java 8, Java 11, Java 17, Java 20 - OpenJDK Builds for Linux, Windows & macOS

Take full advantage of the cloud by utilizing containers with Liberica JDK and Alpaquita, the only Linux optimized to run Java services. This convenient, secure, and robust Cloud solution improves your containers in many ways: Saves up to 40% of RAM,Speeds

bell-sw.com

 
 

3. 설치를 확인합니다.


💡 설치한 JDK를 확인하고 저장된 경로를 별도로 저장해 둡니다.

# 현재 활성화 된 Java JDK 확인
$ /usr/libexec/java_home -V

 
 

4. bash_profile 내에 JAVA_HOME을 수정합니다.


# bash 환경 파일에 접근합니다.
$ vi ~/.bash_profile

# JAVA_HOME 경로를 위에서 가져온 정보를 기반으로 붙여넣고 추가 정보를 입력합니다.
JAVA_HOME=/Library/Java/JavaVirtualMachines/liberica-jdk-17.jdk/Contents/Home

 
 

5. 설치 확인


# bash를 시스템 환경에 반영합니다.
$ source ~/.bash_profile

# java 버전을 확인합니다
$ java --version

 
 
 

5) 기타 참고 : 변경된 JDK에 따라서 프로젝트에 대한 설정


💡 기타 참고 사항으로 JDK를 변경한 이후에 프로젝트에 적용하는 방법을 포함하였습니다.

 
 

1. 프로젝트 플랫폼 SDK 세팅


💡 Proejct Settings - Platform Setting - SDKs - 설치한 Java JDK를 선택합니다.

 
 
 

2. Gradle JVM 변경


💡 Settings - Build, Excution, Deployment - Build Tools - Gradle - Gradle Project - Gradle JVM을 변경합니다.

 
 
 
 
오늘도 감사합니다. 😀
 
 
 

그리드형