
1. mvn compile
- 목적 : 프로젝트의 소스 코드를 컴파일
- 라이프사이클 단계 : compile은 Maven 빌드 라이프사이클의 한 단계로, 프로젝트의 소스 코드를 컴파일하는 역할을 합니다.
출력 : 컴파일된 클래스는 기본적으로 target/classes 디렉토리에 위치합니다.
2. mvn package
- 목적 : 컴파일된 코드를 JAR(Java Archive) 또는 WAR(Web Archive)와 같은 배포 가능한 형식으로 패키징합니다.
- 라이프사이클 단계 : package는 Maven 빌드 라이프사이클의 한 단계이며, compile 단계를 포함하고 패키징 단계를 추가합니다.
- 출력 : 패키지된 아티팩트(예: JAR, WAR)는 기본적으로 target 디렉토리에 생성됩니다.
3. mvn install
- 목적 : 패키지된 아티팩트를 로컬 Maven 저장소에 설치하여 동일한 머신의 다른 프로젝트에서 사용할 수 있게 합니다.
- 라이프사이클 단계 : install은 Maven 빌드 라이프사이클의 한 단계이며, compile 및 package 단계를 포함하고 설치 단계를 추가합니다.
- 출력 : 패키지된 아티팩트는 로컬 Maven 저장소 (~/.m2/repository)에 설치됩니다.
요약하면:
mvn compile은 소스 코드를 컴파일합니다.
mvn package는 코드를 컴파일하고 이를 배포 가능한 형식으로 패키징합니다.
mvn install은 코드를 컴파일하고 패키징하여 아티팩트를 로컬 Maven 저장소에 설치합니다.
출처) ChatGPT
'ERROR FIX' 카테고리의 다른 글
LifecycleException: 구성요소 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]을(를) 시작하지 못했습니다 (0) | 2024.03.04 |
---|---|
@Value가 null 값으로 들어올때 (0) | 2024.01.15 |
Caused by: java.io.FileNotFoundException: class path resource 에러 (0) | 2023.11.11 |
스프링 CORS 처리 (+스프링 클라우드 게이트웨이) (1) | 2023.11.05 |
AmazonS3Client - No content length specified for stream data. 경고 WARN (0) | 2023.08.21 |
댓글