Maven
메이븐(Maven)이란?
메이븐은 빌드 과정(프로젝트 생성부터 배포까지)에서 반복되는 일들을 효율적으로 처리할 수 있도록 도와주는 빌드 툴이다. 따라서 메이븐을 이용하면 빌드 작업이 경량화된다.-
메이븐 빌드 과정 및 플러그인 설정
메이븐은 프로젝트를 빌드, 테스트, 배포하기 위한 각 단계를 정의한다.
메이븐은 단계(phase)를 실행하기 위해 플러그인(plug-in)을 사용한다.
플러그인은 각 단계에서 수행되는 작업을 정의하고 실행하는 프로그램이다. ex) 컴파일, 테스트, 패키징
메이븐의 기본단계
- validate: 프로젝트의 상태를 검증
- compile: 소스 코드를 컴파일(소스 코드를 기계어로 변환)
- test: 단위 테스트를 수행
- package: 컴파일된 코드를 패키지로 만듬
- verify: 통합 테스트를 수행하고 결과를 검증
- install: 패키지를 로컬 저장소에 설치
- deploy: 패키지를 원격 저장소에 배포
이러한 단계(phase)들은 메이븐의 빌드 수명주기(Build Lifecycle)에 속하며, 각 단계는 특정한 과정을 나타낸다. 또한, 각 단계에서 실행되는 실제 작업은 플러그인의 goal(목표)에 의해 정의된다. 플러그인이 동일해도 goal이 다를 수 있다.
ex) compile 단계에서는 maven-compiler-plugin 플러그인의 compile goal이 실행되어 소스 코드를 컴파일하며 마찬가지로, package 단계에서는 maven-jar-plugin이나 maven-war-plugin과 같은 플러그인의 goal이 실행되어 패키지를 생성한다.
jar : Java 애플리케이션과 라이브러리, 리소스 등이 포함한 압축 파일
war: JavaEE와 관련된 웹 애플리케이션을 패키징하는 파일
참고 자료 출처 :
https://www.youtube.com/watch?v=VAp0n9DmeEA&list=PLq8wAnVUcTFWRRi_JWLArMND_PnZM6Yja&index=1