본문 바로가기
Java/기본 개념 및 클래스

[Java] 7. 명령 프롬프트에서 자바 파일 컴파일 하기

글: Song hyun 2024. 4. 10.
728x90
반응형

[Java] 7. 명령 프롬프트에서 자바 파일 컴파일 하기

 

1. 명령 프롬프트란?

-명령 프롬프트(Command prompt, Shell Prompt): 명령 프롬프트는 알파벳과 숫자로 이루어진 명령어들로 컴퓨터를 조작하기 위한 화면을 뜻한다. 명령 프롬프트는 MS사의 윈도우 OS의 기본 유틸리티로, 운영체제(OS)의 명령 줄 해석기이다.(CLI) 이는 그래픽 유저 인터페이스(GUI; 아이콘, 그림 등을 사용해 시각적으로 알기 쉬운 화면 조작.)와 대조된다.

-명령 프롬프트는 윈도우 시스템 폴더 내의 "cmd.exe" / [win+R] / [윈도우 탐색기] - 폴더 창에 "cmd" 검색를 통해 실행 할 수 있다.

 

-MS-DOS(Microsoft Disk Operating System): 도스의 일종으로, 마이크로소프트사가 개발한 IBM PC용 운영체제(OS)이다.

-DOS(Disk Operating System): 디스크 운영체제의 일종으로, 디스크에 읽고 쓰기 등의 명령을 수행하는 프로그램이다. 플로피 디스크, 하드 디스크 드라이브, 광 디스크와 같은 디스크 저장 장치를 사용할 수 있다. 

-IBM PC(IBM Personal Computer): 미국의 컴퓨터 정보기기 전문 업체인 IBM사가 만든 컴퓨터이다. 

-명령 줄 해석기(CLI; Command Line Interface): 텍스트 중심의 콘솔 창을 통해 프로그램 수행 환경을 제공하는 UI(User Interface; 사용자 인터페이스)이다. 마우스의 도움 없이 명령어를 키보드로 직접 입력해야 사용이 가능하다. (<->GUI) 현재는 CLI와 대조적인 GUI 환경이 지배적이다.

 

(좌측) GUI(Graphic User Interfac) (우측) CLI(Command Line Interface)

 

 

 

 

2. 왜 명령 프롬프트에서 자바를 실행하지?

 

-우리가 쓰는 Eclipse, Visual Studio 등과 같은 IDE들은 사람들이 만든 자바 파일을 직접 컴파일하고, 실행해준다. 이는 자바 프로그램이 실행되려면 자바 가상 머신(JVM; Java Virtual Machine)이 이해할 수 있는 바이트 코드(Bytecode)로 컴파일하는 과정이 꼭 필요하기 때문이다.

 

 프로그래밍 언어에는 발전과정에 따라 3가지로 나뉘는데, 바로 어셈블리어(1세대/기계와 밀접한 관계를 가진 언어), 인터프리터(2세대/실시간 해석 언어), 컴파일러 언어(3세대)가 바로 그것이다. Java는 인터프리터와 컴파일러 언어의 장점을 모두 가지고 있다. JVM이 소스코드 한 줄에 대한 컴파일 코드를 한 줄씩 실행한다. 

 

-인터프리터(Interpreter): 프로그래밍의 소스코드를 바로 실행하는 컴퓨터 프로그램.

-컴파일러(Compiler): 원시코드를 기계어로 번역하는 컴퓨터 프로그램.

 

 

 

 

 이렇게 자바 언어를 바이트 코드로 변환하는 과정을 자바 IDE가 사람을 대신 수행해주는 것인데, 이 과정을 명령 프롬프트를 통해 간접적으로 체험해볼 수 있다.

 

명령 프롬프트에서 자바 파일을 실행하기 위해서는 JDK, 자바 코드 파일이 필요하다. 

 

 

 

 

3. 명령 프롬프트에서 자바 파일 컴파일하기

명령프롬프트에서 자바 파일을 실행해보자.

화면 좌측하단의 검색창, 혹은 window+R키를 눌러 명령 프롬프트를 연다.

 

 

 

 

d: 명령어를 통해 해당 파일이 저장된 D 드라이브로 이동한다.

아래의 명령 프롬프트 창에서 d:를 통해 D 드라이브로 이동한 것을 확인 할 수 있다.

 

 

 

 

dir/cd 명령어를 통해 폴더 내의 파일을 탐색하고, 이동해보자.

 

(1) dir: 현재 폴더 내의 파일, 폴더의 목록을 알려주는 명령어

(2) cd+폴더 이름: 해당 폴더 안으로 이동하는 명령어

(3) cd..:뒤로 가기(지금 폴더에서 나오기)

 

아래의 명령 프롬프트 창에서 dir 명령어를 통해 workpace 내의 폴더, 파일들을 살펴볼 수 있다. 

 

 

 

 

 

[d:]->[workpace]->[Java]->[teco_java]->[src]->[basic]->[ch02] 폴더 내의 파일을 열어보자. 

 

javac 폴더명을 입력한다. 그러면 아래와 같은 에러 화면을 볼 수 있다. (unmappable character)

이때 자바 컴파일러에게 UTF-8을 인코딩 지정해주면 파일을 열어볼 수 있다.

javac 파일명 -encoding UTF-8을 입력한다.

 

 

 

인코딩 지정 후, java 파일이름 을 통해 파일을 열어보면 성공적으로 실행시킬 수 있다. 

 

 

728x90
반응형