안녕하세요.
이 글에서는 자바(Java)를 처음 시작하는 분들을 위해 이클립스나 인텔리제이 같은 IDE 없이도 간단하게 콘솔 환경에서 자바 코드를 컴파일하고 실행하는 방법을 소개합니다.
프로그래밍에 처음 도전하시는 분들이나 가볍게 시작해 보고 싶은 분들에게 꼭 도움이 되길 바라며, 명령어를 단계별로 쉽게 설명드릴 예정입니다.
반응형
콘솔 창을 이용한 Java 파일 컴파일 및 실행 과정
1. 콘솔 창 실행하기
- 윈도우 환경: 시작 메뉴 검색 창에 cmd를 입력하여 명령 프롬프트를 실행합니다.
2. 자바 파일 작성 및 저장
- 자바 코드를 작성한 후, 파일 이름을 Test01.java로 저장합니다.
예시: 다음과 같은 자바 코드가 Test01.java에 저장되었다고 가정합니다.
public class Test01 {
public static void main(String[] args) {
System.out.println("Hello Java");
}
}
- 작성한 파일은 특정 디렉터리(예: C:\javaStudy\pak01)에 저장됩니다.
3. 저장된 경로로 이동하기
- cmd 또는 터미널에서 자바 파일이 저장된 디렉터리로 이동합니다.
- 이동 명령어:
# cd 디렉터리경로
cd C:\javaStudy\pak01
- 해당 명령어를 입력하면 Test01.java 파일이 있는 폴더로 이동됩니다.
4. 자바 파일 컴파일하기
- javac 명령어를 사용하여 자바 파일을 컴파일합니다.
- 입력 명령어:
# javac 파일이름.java
javac Test01.java
- 컴파일이 성공적으로 완료되면, 동일한 폴더에 Test01.class 파일이 생성됩니다.
- 만약 파일 경로나 코드에 오류가 있다면, 에러 메시지가 출력됩니다. 에러 내용을 확인하여 코드를 수정한 후 다시 컴파일합니다.
- 해당 java 파일이 정상적으로 컴파일 된다면 같은 이름의 .class 파일이 생성 됩니다.
5. 컴파일된 파일 실행하기
- java 명령어를 사용하여 생성된 .class 파일을 실행합니다.
- 입력 명령어:
# java 클래스이름
java Test01
- 주의사항: 실행할 때는 .class 확장자를 입력하지 않습니다.
- 실행 결과:
Hello Java
명령 프롬프트 또는 터미널 화면에 위와 같은 메시지가 출력됩니다.
반응형
자바 파일 컴파일 시 자주 발생하는 실수 및 오류와 해결 방법
1. 패키지(package)가 지정된 경우 발생하는 오류
- 오류 메시지:
기본 클래스 Test02.java을(를) 찾거나 로드할 수 없습니다.
- 원인: 자바 파일에 패키지가 지정되어 있을 경우, 파일을 실행할 때 파일 경로와 패키지 경로가 일치하지 않으면 오류가 발생합니다. 아래처럼 파일에 package pak01;가 선언되어 있다면, 단순히 java Test02 명령어로 실행할 수 없습니다.
- 해결 방법 : java 명령어 입력 시, 패키지명.파일이름 형태로 실행합니다.
반응형
2. 인코딩 문제로 발생하는 오류
# 오류메시지
unmappable character for encoding MS949
- 원인:
자바 파일의 텍스트 인코딩이 MS949(Windows 기본 인코딩)와 호환되지 않아서 발생하는 문제입니다.
일반적으로, 자바 파일이 UTF-8 인코딩으로 저장되었지만, 컴파일러가 다른 인코딩 방식(MS949)을 사용하려 할 때 발생합니다. - 해결 방법:
- 문제의 자바 파일을 메모장 또는 다른 텍스트 편집기로 열기.
- 다른 이름으로 저장 옵션 선택.
- 인코딩을 ANSI로 변경하여 파일 저장.
- 메모장에서 저장 시:
- "파일 > 다른 이름으로 저장" 선택.
- 저장 창 하단의 인코딩 드롭다운 메뉴에서 ANSI 선택.
- 파일 저장.
- 메모장에서 저장 시:
- 추가 해결 방법 (컴파일 시 직접 인코딩 지정):
자바 컴파일 명령어에 -encoding UTF-8 옵션을 추가하여 컴파일러가 올바른 인코딩을 사용하도록 설정.
javac -encoding UTF-8 Test02.java
javac -encoding UTF-8 파일이름.java
반응형
'개발 유니버스 > _Java' 카테고리의 다른 글
[JAVA] 날짜, 요일, 월 관련된 정보 구하기 (0) | 2021.07.17 |
---|---|
[JAVA 기초] 연산자와 제어문 알아보기 (0) | 2020.07.05 |
[JAVA 기초] 클래스 구성, 멤버 필드, 멤버 메서드, 멤버 변수, 메인메서드, 명령행 매개변수 알아보기 (0) | 2020.07.04 |
[JAVA 기초]자바(java) 형변환 방법, 주석문 알아보고 아스키코드, 문자 리터럴 의미 알아보기 (0) | 2020.07.03 |
[JAVA 기초]자바(java) 상수, 변수, 메서드, 예약어, 자료형 알아보기 (0) | 2020.07.02 |