Maven 이란, xml 형식으로 이루어진 빌드 도구 입니다.
maven clean, install, package
📌 clean 은 컴파일 된 결과물인 .target 폴더를 지워주는 메이븐 명령어이고
📌 install 과 package 는 프로젝트를 빌드하여 jar 실행 파일을 만들어주는 명령어입니다.
Mvn install vs package
mvn install 과 mvn package 의 차이점은 로컬 maven 폴더에 jar 파일을 저장해주냐 안해주냐의 차이입니다.
package 는 생성된 jar파일이 .target 폴더에 위치하고
install 은 생성된 jar 파일이 .target 하위 와, 로컬 mvn 폴더 내의 repoisoty 폴더 생성됩니다.
메이븐 생명주기 (maven lifecycle)
1. process-resources
- /src/main/resources 디텍토리를 <outputDirectory>에 생성
2. compile
- 소스코드를 컴파일해서 클래스를 <outputDirectory>에 생성
3. test-compile
- 테스트 소스 코드를 컴파일
4. test
- 테스트가 실패하면 빌드를 멈춘다. 테스트 코드가 깨져도 빌드를 성공시키려면 maven.test.skip속성을 true로 설정
➡️ 여기부터는 명령어 따라서,
package
- compile, test-compile, test순으로 실행 후 jar, war파일이 target디렉토리 아래에 생성
install
- 로컬 리파지토리에 패키지를 배포
- 의존성 있는 다른 프로젝트에서 local repository에 존재하는 패키지 참조할수 있게 됨
deploy
- 원격리파지토리에 등록하며 다른 프로젝트에서 사용할수 있도록 한다.
clean
- target 디렉토리의 결과물을 모두 제거
maven Clean install 의 결과물
- jar 파일을 빌딩하고
- 로컬 레포에 인스톨한다.
- Installing /Users/hmin/Desktop/onbording/spring-example/springPractice/target/springPractice-0.0.1-SNAPSHOT.jar to /Users/hmin/.m2/repository/com/example/springPractice/0.0.1-SNAPSHOT/springPractice-0.0.1-SNAPSHOT.jar
참고
https://jinsiri.tistory.com/588?category=792858
'Spring > 기타' 카테고리의 다른 글
[IntelliJ] 인텔리제이 단축키 모음 - Mac, Window 조금..ㅎ (2) | 2022.07.06 |
---|