개발자가 작성한 .java 파일을 .class 파일로 변환하는 것
- 개발자가 .java 파일을 작성한다.
- Java Complier 가 .java 파일을 .class 파일로 변환한다.
다른 여러 블로그들을 보면 Class Loader 가 JVM에 Load 하고 Runtime Data Area에 위치시키는 것 까지 작성되어 있는 글이 많다.
그런 글 들을 보면서 그럼 컴파일을 하면서 실행을 시키는 건가 ? 라는 생각이 들었다.
내 생각은 프로그램 실행 과정을 작성해 놓은 것 같았다. 프로그램이 실행되기 위해서는 컴파일이 필수적이기 때문이다.
그래서 나는 컴파일은 딱 .class 파일을 만드는 것 까지라고 생각한다.
- 개발자가 만든 프로그램을 실행가능한 상태로 만드는 것
- .jar 또는 .war 파일로 만드는 것
.jar / .war 파일의 안을 들여다보면 개발자가 작성한 .java 파일은 찾아볼 수 없고 .class 파일 들만이 존재하는 것을 볼 수 있다. 이는 빌드를 진행하게 되면 컴파일된 .class 파일만 실행가능하도록 만든다는 것을 의미한다. 컴파일은 빌드 과정 중 일부분인 셈이다.