본문으로 건너뛰기
안동민 개발노트 아이콘

안동민 개발노트

본문 시작
1장 : Java 설치와 첫 프로그램

Java와 JDK 설치

Java 프로그램을 만들 때 필요한 JDK를 설치하고 터미널에서 java와 javac가 동작하는지 확인합니다.

Java를 처음 배운다면 프로그램을 쓰기 전에 두 가지가 필요합니다.

사람이 소스 코드를 작성할 편집기와 그 소스를 실행 가능한 형태로 바꿀 JDK입니다.

이 장은 프로그래밍 경험을 전제로 하지 않습니다.

JDK를 설치하고, 짧은 프로그램을 직접 컴파일하고, 오류를 읽고, 실행 인자를 받는 데까지 한 단계씩 진행합니다.

이번 장에서 자주 보는 용어는 다음과 같습니다.

소스 코드는 사람이 작성한 .java 파일, 컴파일은 소스를 JVM이 실행할 .class 파일로 바꾸는 과정, 터미널은 명령을 문자로 입력하는 프로그램입니다.

각 용어는 실제 명령을 실행하면서 다시 설명합니다.


Java와 JDK

Java는 프로그램을 작성하는 언어이면서 그 프로그램을 실행하는 환경의 이름입니다.

지금은 다음 구분만 기억하면 충분합니다.

  • .java 파일에는 사람이 읽고 수정할 소스 코드가 들어갑니다.
  • javac.java 파일을 컴파일하는 프로그램입니다.
  • java는 컴파일된 프로그램을 JVM에서 실행하는 프로그램입니다.
  • JDK(Java Development Kit)는 javac, java, 표준 라이브러리를 한데 묶은 개발 도구입니다.

JVM의 내부 구조와 JDK 배포판의 차이는 뒤에서 다룹니다.

첫 목표는 javajavac 두 명령이 같은 기능 버전 25를 출력하게 만드는 것입니다.


JDK 25 설치

JDK 25를 제공하는 배포판 하나를 선택해 설치합니다.

Eclipse Temurin, Azul Zulu, Amazon Corretto처럼 이름이 달라도 Java 25 규격을 구현한 JDK라면 이 교재의 기본 예제를 실행할 수 있습니다.

압축 파일을 직접 관리하는 방식보다 운영체제용 설치 프로그램을 이용하면 처음 설정하기 쉽습니다.

Windows 설치 프로그램에서는 다음 항목을 활성화합니다.

  1. JDK 25를 설치합니다.
  2. JAVA_HOME을 설정하는 항목이 있다면 활성화합니다.
  3. JDK의 bin 폴더를 PATH에 추가하는 항목을 활성화합니다.
  4. 설치가 끝나면 열려 있던 터미널을 닫고 새로 엽니다.

macOS나 Linux에서도 설치 뒤 새 터미널을 열어 아래 버전 명령을 확인합니다.

이 교재는 Windows PowerShell 명령을 먼저 제시하고, 명령이 다른 경우에만 Unix 계열 명령을 함께 적습니다.


터미널 열기와 버전 확인

터미널은 파일을 만들고 프로그램을 실행하는 명령을 입력하는 창입니다.

Windows에서는 시작 메뉴에서 PowerShell을 검색해 엽니다.

명령을 한 줄 입력하고 Enter를 누릅니다.

java -version
javac -version

설치 경로와 패치 번호는 컴퓨터마다 다르지만 두 출력 모두 기능 버전이 25여야 합니다.

출력 예
openjdk version "25.0.x" ...
javac 25.0.x

java -version은 실행 환경을, javac -version은 컴파일러를 확인합니다.

두 명령 중 하나를 찾지 못한다면 Java 코드의 문제가 아니라 설치나 PATH 설정의 문제입니다.

PowerShell에서 실제 선택된 파일은 다음처럼 확인합니다.

Get-Command java, javac | Select-Object Name, Source
where.exe java
where.exe javac

PATH는 명령 이름을 입력했을 때 실행 파일을 찾을 폴더 목록입니다.

위에서부터 탐색하므로 여러 JDK가 보이면 첫 번째 경로가 현재 선택입니다.

JAVA_HOME은 JDK 설치 위치를 가리키는 별도 환경 변수이며, java 명령이 언제나 이 값을 자동 선택하는 것은 아닙니다.

macOS·Linux에서는 다음 명령으로 같은 내용을 확인합니다.

command -v java
command -v javac
java -version
javac -version

학습 폴더 만들기

프로그램 파일을 한곳에 모을 작업 폴더를 만듭니다.

PowerShell에서 다음 명령을 차례로 실행합니다.

New-Item -ItemType Directory -Force java-board/src | Out-Null
New-Item -ItemType Directory -Force java-board/out | Out-Null
Set-Location java-board
Get-Location
Get-ChildItem
java-board/
├─ src/    # 직접 작성하는 .java 파일
└─ out/    # javac가 만드는 .class 파일

src는 편집 원본이고 out은 다시 만들 수 있는 결과물입니다.

앞으로 별도 안내가 없으면 java-board 폴더에서 명령을 실행합니다.

현재 위치가 다르면 같은 상대 경로를 입력해도 다른 파일을 찾으므로, 문제가 생기면 먼저 Get-Location을 확인합니다.


설치 문제를 구분하는 법

다음처럼 원인을 한 단계씩 좁힙니다.

증상먼저 확인할 것의미
java를 찾을 수 없음where.exe javaPATH에 실행 파일이 없음
java만 25가 아님where.exe java 순서예전 JDK가 먼저 선택됨
javac를 찾을 수 없음JDK 설치 여부실행 환경만 있고 개발 도구가 없을 수 있음
IDE와 터미널 버전이 다름IDE의 프로젝트 SDKIDE와 터미널은 설정이 별도임

설정을 바꾼 뒤에는 새 터미널을 열어 두 버전을 다시 확인합니다.

경로를 추측해 여러 항목을 한꺼번에 바꾸기보다 현재 선택 경로와 버전을 기록하고 하나씩 수정하는 편이 안전합니다.


연습 문제

새 터미널을 열고 다음 네 정보를 기록하세요.

  1. java -version의 기능 버전
  2. javac -version의 기능 버전
  3. Get-Command java가 보여 주는 경로
  4. Get-Location이 보여 주는 java-board 작업 폴더

두 기능 버전이 25이고 현재 폴더가 java-board라면 첫 프로그램을 만들 준비가 끝났습니다.

다음 문서에서 편집기로 5줄짜리 소스 파일을 저장합니다.