IT/단어

Maven 이란?

하요 2022. 3. 31. 12:27
반응형

Maven 이란?

 : Maven은 지금까지 애플리케이션을 개발하기 위해 반복적으로 진행해왔던 작업들을 지원하기 위하여 등장한 도구이다. Maven을 사용하면 빌드, 패키징, 문서화, 테스트와 테스트 리포팅, git, 의존성 관리, svn등과 같은 형상관리 서버와 연동(SCMs), 배포 등의 작업을 손쉽게 할 수 있다.

 

특징

  • 빌드 과정을 쉽게 만들기
  • 정형화된 빌드 시스템 제공
  • Maven은 POM과 플러그인 세트를 사용하여 프로젝트를 빌드한다.
  • 양질의 프로젝트 정보 제공
  • war파일 기반의 배포용으로도 자주 사용됨

 

장점

 

  • 편리한 의존성 라이브러리 관리
  • 정해진 빌드 방법을 사용하여 협업에서 유리하게 작용
  • 다양한 플러그인을 통해 많은 작업이 자동화됨

 

Maven LifeCycle

메이븐은 프레임워크이기 때문에 동작 방식이 정해져있는데, 일련의 단계(Phase)에 연계된 Goal을 실행하는 과정을

Build라고 하며, 미리 정의되어있는 Build들의 순서를 라이프사이클(Lifecycle)이라 합니다.

즉, 미리 정의된 빌드순서를 라이프사이클(Lifecycle)이라 하고, 각 빌드 단계를 Phase라고 합니다.

 

종류

1. Clean : 빌드시에 생성되었던 파일들을 삭제하는 단계
2. Validate : 프로젝트가 정상적인고 사용할 수 있는지 확인하는 단계
3. Compile : 프로젝트를 컴파일하는 단계
4. Test : 단위 테스트를 수행하는단계로 실패 시 빌드 실패로 처리 ( 옵션에 따라서 skip이 가능합니다 )
5. Package : 컴파일 완료 후, 배포를 위하여 jar, war 파일로 패키지를 만드는 단계
6. Install : 패키지를 로컬에 설치하는 단계
7. Build : 프로젝트를 빌드하는 단계
8. Site : 프로젝트 문서 등을 작성, 생성하는 단계
9. Deploy : 만들어진 패키지를 원격 저장소에 release 하는 단계.

 

* 가장 일반적으로 사용하는 표준 라이프 사이클은 Clean, Build, Site이다.

 

 

 



출처: https://mangkyu.tistory.com/8 [MangKyu's Diary]

 

반응형