본문 바로가기

Back/Java

JDK를 왜 변수에 추가해야 할까?

시간이 나서 처음부터 올라가자보자는 마음에 메모장에서 자바 파일 만들기부터 시작해봤다.

그런데 은근히 절차가 기억이 안 나더라...

 

이런 게 기초가 부실하다는 걸까?

마음을 다 잡고 과정을 천천히 되새겨 봤다.

 

 

1. 메모장에 메인 클래스와 메인 메서드를 작성한다.

2. 내용을 적고 사용할 기능이 담긴 라이브러리를 추가한다.

3. 파일 확장자를 모든 파일로 설정한 뒤, 파일이름.java 형식으로 저장한다.

4. 저장한 파일을 JDK의 bin 폴더에 넣는다.

5. 자바 컴파일러를 활용해 바이트 파일을 생성한다.

6. 자바 런타임을 활용해 바이트 파일을 읽어 프로그램을 실행한다.

 

런타임 과정을 보다 세부적으로 본다면,

 

7. 바이트 파일을 자바 클래스 로더에 담아서 자바 클래스 라이브러리를 로딩한다.

8. 메모리 영역에서 처리가 이뤄진다.

9. Execution Engine(Runtime Module)이 바이트 파일을 실행한다.

 

 

이 과정을 겪어보니 왜 시스템 변수나 사용자 변수의 path 변수에 JDK bin 위치를 추가하는지 알게됐다.

bin 폴더 안에 javac.exe, java.exe 파일이 모두 존재한다.

자바 파일을 실행하려면, 실행할 파일을 매번 JDK bin 위치에 넣어야 한다.

그래야 매번 실행할 때 상대경로를 잡지 않아도 된다.

 

너무 귀찮은 일이다...

따라서 전역 변수로 경로를 잡아서 bin 외부에서도 파일을 실행할 수 있도록 하는 것이다.

 

오홍...!