-
01-03. javac 명령어 사용하기 (IDE 없이 .java 컴파일하기) + IDE이란Java/기초 및 개념 2025. 3. 4. 11:54728x90
[ # 포스팅의 흐름/내용은 위키독스 '점프 투 자바' 도서를 참고/인용하여 정리했습니다. 부가적인 내용을 덧붙여 정리하고 있습니다. ]
대개 IDE(Integrated development environment, 통합 개발 환경)을 통해
복잡한 프로그램 생산 과정을 간단하게 만들어 편리한 개발 환경에서 작업을 진행한다.
# 통합 개발 환경 (IDE, Integrated Development Enviroment)
코딩, 디버그, 컴파일, 배포 등 프로그램 개발에 관련된 모든 작업을
하나의 프로그램 안에서 처리하는 환경을 제공하는 '소프트웨어'
즉, 복잡한 로그램의 실행 과정을 하나의 소프트웨어(프로그램)로 모두 처리할 수 있는 환경을 제공한다.
java 프로그래밍이 가능한 IDE은 [ IntelliJ / Eclipse / Visual Studio ] 등이 있으며
사용 목적에 따라 적절한 통합 개발 환경을 사용하면 된다.
> 하나의 파일 실행 등 간단한 과정의 프로그래밍인 경우 : Visual Studio Code 등
> 대규모 프로그램을 목적으로 프로그래밍 하는 경우 : Eclipse, Visual Studio, IntelliJ 등# 프로그램의 실행 과정
더보기컴퓨터에서의 프로그램 실행 과정은
[ 소스코드 작성 및 컴파일 > 링킹 > 실행 파일 로딩 > 프로세스 생성 > 실행 > 종료 ] 순으로,
크게 [ 프로그래밍(코딩) > 컴파일 > 실행, 종료 ]로 볼 수 있다.
(1) [프로그래밍(코딩)]
> 실행하고자 하는 코드를 작성한다. (txt 파일 등)
(2) [컴파일]
> 해당 파일을 원하는 언어의 컴파일러를 통해 실행
.
.
.
* 즉, IDE을 사용하지 않는 경우, 별도의 컴파일러를 구해 작업을 진행해야 한다.
이때 이러한 IDE을 설치/사용하여 프로그램을 작성하기 이전,
[ javac, java ] 명령어를 사용해보는 것이 이번 포스팅의 목적이다.
*** 해당 작업을 위해서는 우선 JDK의 설치가 필요합니다. ***
설치는 이전 포스팅을 참고 부탁드립니다. ( JRE가 아닌 JDK로 설치!! )
2025.02.24 - [Java/기초 및 개념] - 01-02. Java 설치하기 (jre, jdk란 무엇인가 / 유료,무료 버전 확인)
IDE 없이 javac / java 명령어 사용하기
# javac
: java compiler의 줄임말로,
자바 파일을 컴파일할 때 사용하는 것이 바로 'javac.exe' 파일이다.
* compile (컴파일)
: 프로그래머가 작성한 코드(사람이 이해할 수 있는 언어)를
컴퓨터가 이해할 수 있는 말(기계어)로 바꾸는 과정
* java file (자바 파일)
: 프로그래머가 작성한 자바 프로그램.
확장자는 .java로, 이러한 파일을 자바 파일 또는 자바 소스라고 한다.
이때, 컴파일을 통해 생성되는 .class 파일과는 아래와 같은 차이가 있다.
> .java 파일 : 사람이 이해하고 작성하는 소스 코드
> .class 파일 : 컴파일된 이진 형식의 바이트 코드 포함, JVM에서 실행된다. (플랫폼 독립성)자바를 통해 프로그램을 작성하고 실행하는 과정을 살펴보자.
[점프 투 자바] 01-03 자바 둘러보기 내 프로그램 작성 및 실행 과정 1. 소스 코드인 MyProgram.java를 작성한다.
(사람이 이해할 수 있는 언어로 작성된 java file)
2. 컴파일러(compiler)를 통해 클래스 파일(.class)을 생성한다.
이때, 컴파일러는 'javac.exe'이고,
생성된 MyProgram.class 파일은 JVM이 인식할 수 있는 이진 파일(binary file)이다.
3. JVM(Jaava Virtual Machine, 자바 가상 머신)은
이진 코드(binary code)를 해석하여 프로그램을 '실행'한다.
이때, JVM은 'java.exe'에 해당한다.
4. MyProgram의 실행 결과가 컴퓨터에 반영된다.
* Java는 왜 exe파일이 아닌 class 파일이 생성되나요?
더보기C 또는 C++로 작성된 프로그램의 경우, exe 파일을 만들어 낸다.
.exe 파일은 [ 컴퓨터 프로그램의 실행 파일 ]로 단순 실행을 통해 프로그램을 실행시킬 수 있으나,
'오픈 VMS / 도스 / 마이크로소프트 윈도우 / 리엑트OS' 등, 사용 가능한 운영체제의 제한이 있다.
* 물론 java도 exe 프로그램을 만들 순 있으나,
JVM이 포함된 형식이기에 파일이 무척이나 커진다는 단점이 있다.
# Java의 Class 파일
클래스 파일(.class)은 JVM을 통해 해석하여 실행된다. (3)
이때, 아무래도 JVM이라는 중간 단계가 있으므로 다른 언어에 비해 속도는 느리나,
> 어떠한 운영체제에서도 사용할 수 있음
> 한 번 작성한 것을 여러 곳에 재활용 가능
위 이점이 자바의 큰 특징이자 장점이라 할 수 있다.
* 자바 또한 JIT(just-in-time, 즉시)을 도입하는 등의 발전을 거듭해
하드웨어를 직접 제어하는 경우가 아니라면, 실행속도 또한 C, C++을 거의 따라잡았다.
위 과정을 토대로,
이제 'Hello World'를 출력하는 프로그램을 작성해 보자.
1) 명령 프롬프트(CMD) 창을 연다.
1. 윈도우 검색창에 cmd를 검색
2. Windows키 + R 을 누른 후, cmd를 입력하여 검색
windows키 + R 이후 cmd 검색 2) javac 명령어 입력
javac
입력 후 enter를 누르면 아래와 같이 해당 명령어에 대한 추가 옵션 등이 출력된다.
아래와 같이 확인되는 경우, Java Path가 정확히 설정된 것이다.
cmd 내 'javac' 명령어 입력 *** 'javac'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 가 발생되는 경우 ***
-> java path 설정 및 설치 등이 제대로 이뤄지지 않은 것으로, 아래 포스팅을 참고해 설정을 진행하자.
2025.02.24 - [Java/기초 및 개념] - 01-02. Java 설치하기 (jre, jdk란 무엇인가 / 유료,무료 버전 확인)
3) 자바 파일(.java) 생성
1. 텍스트 파일 내 작성 후 확장자 변경
2. cmd 명령어 'copy con'으로 파일 생성
두 방법 중, 편한 방식을 사용하면 된다.
1. 텍스트 파일 내 작성 후 확장자 변경
1-1. 윈도우 검색창 내 메모장 검색,
아래 내용 작성 후 저장 (제목은 HelloWorld.java ) <- 확장자 변경!
* 이때, 경로는 cmd 기본 경로 내 저장 ( C:\Users\사용자명 )
class HelloWorld {
}메모장을 통해 생성 및 확장자 변경
2. cmd 명령어 'copy con'으로 파일 생성
2-1. cmd 내 아래 명령어를 입력한다.
1) copy con HelloWorld.java
2) class HelloWorld {
}
3) ctrl + Z 누른 후 엔터 // (종료)copy con 명령어를 통한 파일 생성 및 내용 작성 2-2. 파일 확인
해당 파일은 해당 커맨드를 실행한 경로에 저장되며,
별도로 변경하지 않은 경우 아래 경로 내 파일이 존재한다.
C:\Users\사용자명
HelloWorld.java 파일 위치 등록된 내용을 확인하고 싶다면,
메모장을 열어 해당 파일을 끌어와 내용을 확인할 수 있다.
4) javac를 이용하여 자바 컴파일 진행
명령 프롬프트(CMD) 내에서 해당 파일이 저장된 경로 내 아래 명령어를 입력한다.
javac HelloWorld.java
javac 명령어를 통한 컴파일 위와 같이 표시되는 내용 없이 종료되었다면 실행이 완료된 것이다.
5) dir 명령어를 통해 class 파일 생성 여부 확인
아래 명령어를 입력해 class 파일 생성 여부를 확인하자. (컴파일이 완료 되었는지 확인을 위해)
dir HelloWorld.class
dir 명령어를 통해 class 파일 생성 여부 확인 위와 같이 생성된 파일이 보이면 컴파일이 완료된 것이다.
7) .class 파일 내용 확인 (type 명령어)
type을 통해 특정 파일의 내용을 살펴볼 수 있다.
type HelloWorld.class
class파일 내용 확인 (type 명령어) class 파일은 컴파일되어 이진 코드로 되어 있기에,
단순 읽기를 통해 접근하는 경우 해독할 수 없는 글자나 깨진 글자로 표시된다.
8) 클래스 파일 실행하기 (java 명령어)
java를 통해 클래스 파일을 실행할 수 있다.
java HelloWorld
java 명령어를 통한 class 파일 실행 이때 오류가 발생하는데, 이는 위에 생성했던 java 코드가 실행할 수 있을만한 코드의 형태가 아니기 때문이다.
조건을 모두 갖춘 java 파일을 컴파일(javac)하고, 실행(java) 시키는 경우는 오류 없이 작업을 진행할 수 있다.
IDE을 설치하여 본격적인 프로그래밍 이전,
javac와 java 명령어를 사용해보기 위해 훑고가는 페이지로
IDE 없는 경우 java를 컴파일 / 실행하는 방법에 대해 정리한 내용입니다.
728x90'Java > 기초 및 개념' 카테고리의 다른 글
01-02. Java 설치하기 (jre, jdk란 무엇인가 / 유료,무료 버전 확인) (6) 2025.02.24 01-01. Java(자바)란? (0) 2025.02.24