이전 글에서는 자바를 intellij, eclipse등의 IDE없이 실행시키기 위한 전초작업인 환경변수 설정을 진행해보았다!
이번글에서는 어떻게 실행하는지 설명할 것이다.
참고로 운영체제는 윈도우 기준이다❗
만약 C:\project\java2\OOP
<- 이 경로에 아래와 같은 .java 소스코드파일이 있다고 해보자.
class Accounting {
Accounting(double valueOfSupply, double vatRate){
this.valueOfSupply = valueOfSupply;
this.vatRate = vatRate;
}
// 공급가액, 부가가치세율
public double valueOfSupply = 0.0;
public double vatRate = 0.0;
public double getVAT() {
return this.valueOfSupply * this.vatRate;
}
public double getTotal() {
return this.valueOfSupply + getVAT();
}
public void printVAT() {
System.out.println("VAT : " + getVAT());
}
public void printTotal() {
System.out.println("Total : " + getTotal());
}
}
public class _4ClassApp { // 회계 프로그램 만들기
public static void main(String[] args) {
Accounting a1 = new Accounting(10000.0, 0.1);
a1.printVAT();
a1.printTotal();
Accounting a2 = new Accounting(12000.0, 0.2);
a2.printVAT();
a2.printTotal();
}
}
- 윈도우 + R키를 누르고 나오는 창에 cmd를 입력해 cmd로 접근한다.
- cd 실행파일이 위치한 디렉토리 명령어를 입력 -> 실행할 파일이 있는 디렉토리로 접근
- dir로 내가 접근한 디렉토리에 실행하려는 파일이 있는지 확인
-> 윈도우는 dir이지만 리눅스, 맥, git bash에서는 아마 ls일것이다.- javac 컴파일하려는 파일명 입력 -> .class 파일을 생성
- java 실행할 파일명 입력 -> 실행
직접해보겠다!
먼저 cd 명령을 이용해 해당 파일이 있는 디렉토리로 접근한다.
우리가 실행시키려는 .java파일이 존재함을 확인!
javac 파일명으로 실행 시켰으나 위와 같은 encoding 에러가 뜬다.
구글링을 해보니 소스코드내에 한글이 존재해서 그렇다고 한다.
내 소스코드에는 주석에 한글을 써놔서 그런가보다.
해결법은 -> javac _4ClassApp.java -encoding UTF8
이렇게 파일명 뒤에 -encoding UTF8을 붙이면된다.
실행 후 디렉토리 확인을 해보니 .class파일이 아주 따끈따끈하게 잘 생성이됐다😚
아주 잘 실행이 된다❗❗
참고로 밑줄 쳐놓은 것처럼 java 파일명 명령어를 사용할 때 .class라거나 .java처럼 파일의 확장자는 적지 않는다.
그리고 java 명령어는 javac로 컴파일 시켜놓은 .class파일을 실행시키는 것이기 때문에 .java 확장자를 적는 것은 말도 안되는 것이다.
예외 상황을 보여주려고 일부러 쓴것이다.
절대 실수한거 아님 ㅋㅋ
자 그럼 여기까지 간단하게 .java파일을 IDE없이 컴파일하고, 실행까지 시켜보았다.
개발자라고 정제된 알고리즘으로 소스코드를 작성하는게 전부가 아님을 느낀다.😅
공부할게 산더미..😂