본문 바로가기

Maven

#4. 빌드는 어떤 방식으로 진행되는가 ( 메이븐 라이프 사이클 )

빌드는 어떻게 진행되는 걸까?


메이븐의 라이프사이클과 페이즈


일반적으로 프로젝트를 빌드할 때의 과정 

  1. 빌드 결과물 삭제
  2. 컴파일에 필요한 자원 복사
  3. 소스 코드 컴파일
  4. 테스트
  5. 압축
  6. 배포

메이븐은 이와 같이 미리 정의하고 있는 빌드 순서를 라이프사이클이라 한다. 그리고 라이프사이클의 빌드 단계를 페이즈라 부른다.

기본 라이프 사이클

  • compile : 소스코드 컴파일
  • test : JUnit과 같은 단위 테스트 프레임워크로 단위 테스트를 한다. 테스트가 실패되면 빌드 실패로 간주한다.
  • package :  pom.xml의 packaging 값에 따라 압축한다. ( jar,war 등 )
  • install : 로컬 저장소에 압축한 파일을 배포한다.
  • deploy : 원격 저장소에 압축한 파일을 배포한다.

clean 라이프 사이클

빌드를 통하여 생성된 모든 산출물을 삭제한다.


site 라이프 사이클

프로젝트에 대한 문서 사이트를 생성할 수 있도록 지원한다.



메이븐 페이즈와 플러그인


메이븐에서 제공하는 모든 기능은 플러그인을 기반으로 동작한다.
즉, 메이븐 페이즈 또한 메이븐 플러그인을 통하여 실질적인 작업을 실행한다.


메이븐 기본 install을 실행 시 console 창이다.



  •  goal : 메이븐 플러그인은 하나의 플러그인에서 여러 작업을 수행할 수 있도록 지원한다. 그 각각의 작업을 goal이라 한다.

  • Run As > Maven Build를 통한 실행화면
    - org.apache.maven.plugins:maven-help-plugin:effective-pom을 실행하는 거임
      ( version 생략 가능 + maven-$name-plugin 규칙 )