반응형
Artifact
Maven등에서 빌드 결과로 나오는 개발 산출물을 주로 Artifact라고 합니다. 또한 Java외에 기타 다른 다양한 '산출물'을 Artifact라고 부르며, Delivery 및 Deploy를 위해 최종적으로 관리되는 산출물이라고 생각하면 된다. Artifact를 모아서 저장하는 공간을 Library 또는 Artifactory라고 한다.
Maven-war-plugin
Maven-war-plugin
pom.xml의 dependency에 선언된 각종 라이브러리들과 Java class 파일 웹 어플리케이션의 각종 리소스들을 모아서 하나의 Web Application Archive 압축 파일로 만들어 줍니다.
war:war
war 형태의 압축 파일로 빌드하는 명령입니다. 압출 파일은 WAS에 의해 압축이 풀리고 파일이 많은 경우에는 압축 해제 시간이 오래 걸릴 수 있습니다.
war:exploded
war 압축 형태를 해체한 디렉토리 형태 구조로 빌드하는 명령입니다. 압축 및 해제 과정이 불필요하고 별도의 디렉토리에 원본 소스를 복사하여 만듭니다. 원본 소스를 건드리지 않고 배포를 원하는 경우에 적합합니다.
war:inplace
target 디렉토리 뿐만 아니라 다른 디렉토리에 library와 class 파일들이 생성되도록 하는 명령입니다. 기본적으로 src/main/webapp이 지정되어 있습니다.
각각의 구조
SNAPSHOT이란?
SNAPSHOT
아직 릴리즈 되지 않은 버전을 뜻한다. 실제(릴리즈)버전과 스냅 샷 버전의 차이점은 스냅 샷에 업데이트가 있을 수 있다는 것이다. 즉, 1.0-SNAPSHOT 오늘 다운로드하면 어제 나 내일 다운로드하는 것과 다른 파일이 제공될 수 있다.
ex) foo-1.0.jar는 maven이 로컬 저장소에서 라이브러리를 찾으면 현재 빌드에 이 라이브러리를 사용합니다.(만약 안정적이지 않다면 setting.xml 또는 pom.xml)을 검색하여 종속성을 검색합니다.
(안정적이지 않다 = foo-1.0.SNAPSHOT.jar와 같은 것을 의미한다.)
반응형
'Back-end > 젠킨스CICD' 카테고리의 다른 글
젠킨스 파이프라인 구성(jenkins Pipeline) (0) | 2022.04.05 |
---|---|
메이븐(Maven) - 개념 (0) | 2021.01.29 |