- 1 1. Introduction
- 2 2. How to Check Your Java Version
- 3 3. Java 설치 방법
- 4 4. Java 업데이트 방법
- 5 5. 일반적인 문제 및 해결 방법
- 5.1 5.1 버전을 확인할 때 “java is not recognized as an internal or external command” 오류가 나타날 때
- 5.2 5.2 여러 Java 버전이 공존하고 의도하지 않은 버전이 사용될 때
- 5.3 5.3 Eclipse와 같은 IDE에서 빌드 오류 발생 (예: “Compiler compliance level does not match”)
- 5.4 5.4 Java 업데이트 후에도 오래된 버전이 남아 있을 때
- 5.5 5.5 Java 웹 애플리케이션에서 “Unsupported major.minor version” 오류가 나타날 때
- 6 6. FAQ (자주 묻는 질문)
- 7 7. Summary
1. Introduction
왜 Java 버전 관리가 중요한가
Java는 웹 애플리케이션, 모바일 앱, 엔터프라이즈 시스템 등 다양한 소프트웨어 개발 분야에서 널리 사용되는 프로그래밍 언어입니다. 그 진화 속도는 빠르며, 각 버전마다 새로운 기능과 사양 변경이 도입됩니다.
예를 들어, Java 8은 람다식과 Stream API를 도입했으며, Java 11부터는 일부 모듈이 폐기(deprecated)되어 런타임 및 라이브러리와의 호환성에 영향을 미칩니다. 이러한 변화를 올바르게 다루려면 “현재 사용 중인 Java 버전이 무엇인지”를 항상 파악하는 것이 필수적입니다.
또한 기업 및 개발 팀에서는 보안 이유와 장기 지원(LTS) 정책에 따라 특정 Java 버전을 지정하는 경우가 많습니다. 따라서 사용 중인 버전이 너무 오래된 경우, 지원 종료(end‑of‑support)로 인한 위험이 발생할 수 있습니다.
이 문서의 목적 및 대상 독자
이 문서는 Java 버전을 확인하고, Java를 설치·업데이트하며, 문제를 해결하는 방법을 포괄적으로 설명합니다. 이 문서는 다음과 같은 독자를 위해 작성되었습니다:
- Java 개발을 시작하고자 하는 초보자
- 현재 사용 중인 버전을 확인하고자 하는 중급 사용자
- 환경 설정이나 업데이트 과정에서 문제를 겪고 있는 실무자
각 주요 OS(Windows, macOS, Linux)별 상세 절차와 개발자 도구를 활용한 검증 방법을 소개하므로, 어느 환경에서도 적용할 수 있도록 구성되었습니다.
목표는 Java 버전에 대한 정확한 지식을 습득하고, 안전하고 쾌적한 개발 환경을 구축하도록 돕는 것입니다.
2. How to Check Your Java Version
2.1 명령줄을 통한 Java 버전 확인
java -version 명령 사용
가장 기본적이고 신뢰할 수 있는 방법은 명령줄에서 Java 버전을 확인하는 것입니다. 운영 체제에 관계없이 동작합니다.
일반 절차:
- 터미널(macOS/Linux) 또는 명령 프롬프트(Windows)를 엽니다.
- 다음 명령을 입력하고 실행합니다:
java -version
예시 출력:
java version "17.0.2" 2022-01-18 LTS
Java(TM) SE Runtime Environment (build 17.0.2+8-LTS-86)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.2+8-LTS-86, mixed mode, sharing)
이 결과를 통해 “Java Runtime Environment (JRE)”의 버전이 17임을 확인할 수 있습니다.
javac -version 으로 JDK 버전 확인
Java 컴파일러인 javac의 버전을 확인하면 JDK가 올바르게 설치되었는지 확인할 수 있습니다.
javac -version
예시 출력:
javac 17.0.2
Java 실행 파일 위치 확인
여러 버전이 설치돼 있는 경우, 실제 사용 중인 실행 파일이 어느 경로에 있는지 확인하는 것이 중요합니다.
- Windows:
where java
- macOS/Linux:
which java
출력된 경로를 확인하면 Java가 설치된 위치를 파악할 수 있습니다.
2.2 GUI를 통한 확인 (Windows)
명령줄 사용이 익숙하지 않은 경우, Windows GUI에서도 Java 버전을 확인할 수 있습니다.
Java 제어판 사용
- 시작 메뉴에서 “Java”를 검색하고 “Configure Java”를 엽니다.
- “Java” 탭을 클릭하고 “View”를 선택합니다.
- 설치된 Java 버전 목록이 표시됩니다.
이 방법을 사용하면 여러 버전이 동시에 존재하더라도 목록 형태로 쉽게 확인할 수 있습니다.
2.3 GUI를 통한 확인 (macOS)
macOS에서도 GUI를 통해 Java 버전을 확인할 수 있습니다.
시스템 설정에서 확인
- Apple 메뉴에서 “System Settings” > “Java”를 엽니다.
- Java 제어판이 실행됩니다.
- “Java” 탭을 선택하고 “View”를 클릭합니다.
Windows와 마찬가지로 상세 버전 정보를 리스트 형태로 확인할 수 있습니다.
2.4 Eclipse에서 Java 버전 확인
Eclipse를 개발 환경으로 사용하는 경우, 프로젝트별로 설정된 Java 버전을 확인하는 것이 중요합니다.
절차:
- Eclipse를 실행하고 대상 프로젝트를 마우스 오른쪽 버튼으로 클릭합니다.
- “Properties”(속성) > “Java Compiler”(자바 컴파일러)로 이동합니다.
- “Compiler compliance level”(컴파일러 호환성 수준) 필드에 사용 중인 Java 버전이 표시됩니다.
Eclipse 자체에서 사용되는 JDK 버전도 다음 단계로 확인할 수 있습니다:
- “Window”(윈도우) > “Preferences”(환경설정) > “Java”(자바) > “Installed JREs”(설치된 JRE)로 이동합니다.
- 사용 중인 JRE의 세부 정보를 확인하여 JDK 경로와 버전을 확인합니다.
3. Java 설치 방법
3.1 Windows 설치 절차
Oracle 공식 사이트에서 JDK 다운로드
- 브라우저를 열고 Oracle 공식 다운로드 페이지 에 접속합니다.
- 최신 “Java SE Development Kit (JDK)”를 찾아 Windows용 설치 프로그램(
.exe형식)을 선택합니다. - 라이선스에 동의하여 다운로드를 시작합니다.
설치 프로그램을 사용한 설치
다운로드가 완료되면 설치 프로그램을 실행하고 다음 단계에 따라 진행합니다:
- 기본 설치 디렉터리는 일반적으로 그대로 사용해도 무방합니다.
- 설치는 몇 분 안에 완료됩니다.
환경 변수 설정 (중요)
명령줄에서 Java를 사용하려면 환경 변수를 설정해야 합니다.
- “Control Panel”(제어판) > “System”(시스템) > “Advanced system settings”(고급 시스템 설정) > “Environment Variables”(환경 변수)를 엽니다.
- “System variables”(시스템 변수) 중
Path를 선택하고bin폴더 경로(예:C:\Program Files\Java\jdk-17\bin)를 추가합니다. JAVA_HOME이라는 새 변수를 만들고 JDK 경로를 지정합니다.
설정을 완료한 후 명령 프롬프트에서 java -version을 실행하여 정상적으로 설치되었는지 확인합니다.
3.2 macOS 설치 절차
JDK 다운로드 및 설치
- 공식 Oracle 페이지에 접속하여 macOS용 JDK(
.pkg형식)를 다운로드합니다. - 다운로드한 파일을 더블 클릭하여 설치 프로그램을 실행하고 화면 안내에 따라 진행합니다.
터미널에서 설치 확인 및 환경 변수 설정
설치가 끝난 후 터미널을 열고 다음 명령을 실행합니다:
java -version
표시된 버전이 최신 버전이면 설치가 성공한 것입니다.
필요하다면 .zshrc 또는 .bash_profile에 다음을 작성하여 JAVA_HOME을 설정합니다:
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin:$PATH
이후 source ~/.zshrc를 실행하여 변경 사항을 적용합니다.
3.3 Linux 설치 절차
패키지 관리자 이용 설치 (Ubuntu/Debian 기반)
sudo apt update
sudo apt install openjdk-17-jdk
그런 다음 버전을 확인합니다:
java -version
javac -version
패키지 관리자 이용 설치 (CentOS/RHEL 기반)
sudo yum install java-17-openjdk-devel
여러 버전이 설치된 경우 버전 전환
Ubuntu에서는 다음 명령을 사용하여 설치된 Java 버전을 전환할 수 있습니다:
sudo update-alternatives --config java
수동 설치 (tar.gz 파일 사용)
- Oracle 공식 웹사이트에서
.tar.gz형식의 JDK를 다운로드합니다. /usr/lib/jvm/와 같은 디렉터리에 압축을 풉니다.- 심볼릭 링크와 환경 변수를 수동으로 설정합니다.
최신 버전이나 특정 JDK 배포판을 사용하고 싶을 때 유용한 방법입니다.
4. Java 업데이트 방법
4.1 Windows에서 Java 업데이트
Java 제어판을 통한 수동 업데이트
Windows에 JRE가 설치되어 있다면 다음 단계로 업데이트할 수 있습니다:
- 시작 메뉴를 열고 “Java”를 입력한 뒤 “Configure Java”(Java 구성)를 엽니다.
- “Update”(업데이트) 탭을 클릭합니다.
- “Update Now”(지금 업데이트)를 클릭하여 최신 버전을 확인하고 설치합니다.
이 방법은 JRE에만 적용됩니다.
개발용 JDK를 사용 중이라면 기본적인 방법은 Oracle 공식 사이트에서 최신 버전을 직접 다시 설치하는 것입니다.
JDK를 수동으로 재설치하는 방법
JDK 업데이트는 “최신 버전을 다운로드하고 설치”하는 방식으로 진행됩니다.
- Oracle 공식 페이지에 접속합니다.
- 최신 JDK를 다운로드합니다 (구버전을 삭제해도 됩니다).
- 설치 후 필요에 따라
JAVA_HOME과Path를 재설정합니다.
4.2 macOS에서 Java 업데이트
Java 제어판을 통한 업데이트 (JRE용)
- 시스템 설정 > Java를 열어 제어판을 엽니다.
- “Update” 탭을 클릭합니다.
- “Update Now”를 실행합니다.
JDK 업데이트 방법
macOS에서는 최신 JDK를 수동으로 설치하는 것이 일반적인 방법이기도 합니다.
- Oracle 공식 사이트 또는 Adoptium과 같은 JDK 배포 사이트에서 최신 버전을 다운로드합니다.
.pkg파일을 더블 클릭하여 설치합니다.- 구버전이 필요 없으면 제거할 수 있습니다.
JAVA_HOME 재설정을 잊지 마세요
새 버전으로 전환하면 JAVA_HOME 경로가 바뀔 수 있습니다.
다음과 같이 재설정합니다:
export JAVA_HOME=$(/usr/libexec/java_home)
4.3 Linux에서 Java 업데이트
패키지 관리자를 통한 업데이트
Linux 환경에서는 OS 패키지 관리자를 사용해 Java를 업데이트할 수 있습니다.
Ubuntu / Debian 기반:
sudo apt update
sudo apt upgrade openjdk-17-jdk
CentOS / RHEL 기반:
sudo yum update java-17-openjdk-devel
여러 설치된 버전 간 전환
새 버전과 구버전 JDK가 동시에 존재한다면, 활성 버전을 수동으로 전환해야 합니다:
sudo update-alternatives --config java
sudo update-alternatives --config javac
대화형 목록이 표시되며, 사용하려는 버전을 선택하면 됩니다.

수동 업데이트 (tar.gz 사용)
패키지에 의존하지 않고 특정 버전을 설치하려면 tar.gz 형태의 JDK를 다운로드하고 압축을 푼 뒤 경로와 환경 변수를 수동으로 설정할 수 있습니다. 구 JDK를 제거하고 새 설정을 적용하면 됩니다.
5. 일반적인 문제 및 해결 방법
5.1 버전을 확인할 때 “java is not recognized as an internal or external command” 오류가 나타날 때
원인
Path환경 변수에 Java 경로가 설정되지 않았습니다.- Java가 올바르게 설치되지 않았습니다.
해결 방법
- JDK가 올바르게 설치되었는지 확인합니다.
- Java
bin디렉터리를Path환경 변수에 추가합니다 (예시):C:\Program Files\Java\jdk-17\bin
- 명령 프롬프트를 재시작하고
java -version을 다시 실행합니다.
5.2 여러 Java 버전이 공존하고 의도하지 않은 버전이 사용될 때
원인
- 여러 JDK/JRE가 설치되어 있으며, 환경 변수 우선순위에 따라 사용되는 버전이 달라집니다.
해결 방법 (Windows / macOS / Linux)
- 명령줄에서
where java(Windows) 또는which java(macOS/Linux)를 사용해 현재 사용 중인 Java 실행 파일을 찾습니다. - 원하는 Java 경로를
Path(Windows) 또는.zshrc/.bash_profile에 명시적으로 작성합니다. - Linux에서는
update-alternatives를 사용해 버전을 전환합니다.
5.3 Eclipse와 같은 IDE에서 빌드 오류 발생 (예: “Compiler compliance level does not match”)
원인
- 프로젝트에 설정된 Java 버전이 Eclipse가 인식하는 JDK 버전과 다릅니다.
해결 방법
- Eclipse에서 “Window” → “Preferences” → “Java” → “Installed JREs”를 열어 JDK 경로를 확인합니다.
- 프로젝트를 우클릭 → “Properties” → “Java Compiler”에서 “Compiler compliance level”을 조정합니다 (예: Java 17에 맞춤).
5.4 Java 업데이트 후에도 오래된 버전이 남아 있을 때
원인
- Java는 기존 버전을 덮어쓰지 않고 그대로 남겨 둡니다.
- 여러 버전을 남겨두면 설정 오류나 보안 위험이 발생할 수 있습니다.
해결 방법
- “Apps & Features”(Windows) 또는
/Library/Java/JavaVirtualMachines/(macOS)에서 불필요한 버전을 삭제합니다. - 삭제 후
Path와JAVA_HOME이 올바르게 업데이트되었는지 확인합니다.
5.5 Java 웹 애플리케이션에서 “Unsupported major.minor version” 오류가 나타날 때
원인
- 애플리케이션을 컴파일한 Java 버전과 실행 시 사용되는 Java 버전이 다릅니다 (예: Java 17로 빌드 → Java 8에서 실행).
해결 방법
- 런타임 Java 버전을 확인하고 컴파일 시 대상 버전을 명시적으로 설정하세요(예:
javac -target 1.8). - 또는 런타임 환경의 Java 버전을 업그레이드하세요.
6. FAQ (자주 묻는 질문)
여기에서는 초보자와 중급 사용자가 자주 묻는 Java 버전 관련 질문을 실용적이고 이해하기 쉬운 답변과 함께 정리했습니다. 검색 수가 많은 주제에 초점을 맞추었습니다.
Q1. JRE와 JDK의 차이는 무엇인가요?
A:
JRE(Java Runtime Environment)는 Java로 만든 애플리케이션을 실행하기 위한 환경입니다.
JDK(Java Development Kit)는 Java 프로그램을 개발, 컴파일, 실행하기 위한 전체 도구 모음입니다.
개발자는 일반적으로 JDK를 설치해야 합니다.
Q2. Java 버전 번호는 무엇을 의미하나요?
A:
Java 버전은 “Java 17.0.2”와 같이 표시됩니다.
- 첫 번째 숫자 “17”은 메이저 버전(Java 17)입니다.
- “0”은 마이너 버전입니다.
- “2”는 업데이트 번호입니다.
Java 9 이후부터는 시간 기반 릴리스 일정에 따라 6개월마다 새로운 버전을 출시합니다.
LTS(Long‑Term Support) 버전은 기업 환경에서 특히 중요합니다(예: Java 8, 11, 17, 21).
Q3. 여러 Java 버전을 동시에 설치해도 괜찮나요?
A:
네, 여러 버전을 동시에 설치할 수 있습니다.
하지만 어떤 버전을 사용할지 명시적으로 지정해야 하며, 원하지 않는 버전이 실행되지 않도록 주의해야 합니다.
Linux에서는 update-alternatives를 사용하고, Windows/macOS에서는 Path와 JAVA_HOME 관리가 핵심입니다.
Q4. 오래된 Java 버전을 제거해야 할까요?
A:
일반적인 원칙으로는 예—불필요한 버전은 제거하는 것이 좋습니다.
보안 위험을 줄이기 위해 사용하지 않는 오래된 JRE/JDK를 삭제하고, 환경 변수를 최신 버전에 맞게 조정하세요.
Q5. Java 버전을 어떻게 전환하나요?
A:
Windows:
Path와JAVA_HOME을 수동으로 설정합니다.- 배치 파일이나 전용 도구를 사용해 여러 버전 간 전환을 자동화할 수도 있습니다.
macOS / Linux:
.bash_profile또는.zshrc를 편집하고export JAVA_HOME=...를 설정합니다.- macOS에서는
/usr/libexec/java_home -v <버전>명령을 사용해 손쉽게 버전을 전환할 수 있습니다.
Q6. Java 업데이트 알림을 자주 받습니다. 무시해도 될까요?
A:
활발히 개발하거나 실행 중인 환경과 무관하다면 일시적으로 무시해도 큰 운영상의 문제는 발생하지 않을 수 있습니다.
하지만 보안 측면에서는 가능한 한 빨리 업데이트하는 것이 강력히 권장됩니다.
특히 기업 시스템이나 웹 애플리케이션에서는 최신 버전을 유지하는 것이 매우 중요합니다.
7. Summary
Java 버전 관리는 개발 환경의 안정성, 애플리케이션 호환성, 보안까지 영향을 미치는 매우 중요한 요소입니다. 버전 불일치로 인한 문제는 결코 드물지 않습니다.
이 글에서는 다음과 같은 내용을 체계적으로 설명했습니다:
- Java 버전 확인 방법(명령줄, GUI, IDE)
- OS별 설치 절차(Windows / macOS / Linux)
- 안전한 업데이트 수행 방법 및 유의사항
- 실제 현장에서 자주 마주치는 문제와 해결책
- 초보자가 흔히 겪는 질문과 답변
이러한 포인트를 올바르게 이해하고 적용하면 Java 버전 관리에 대한 자신감을 얻을 수 있습니다.
특히 이제 막 Java를 배우려는 사람이나 새 개발 환경을 구축하려는 분들에게는 JDK 설치, 버전 전환, 업데이트를 원활히 수행하는 것이 실력 향상으로 바로 이어집니다.
환경 준비는 프로그래밍 생산성과 동기 부여에 큰 영향을 미칩니다.
이 글을 참고하여 신뢰할 수 있고 최신 상태의 Java 환경을 구축해 보세요.

