Maven 이란?

Maven이란?

다음을 지원하는 프로젝트 관리 툴
= 빌드 프로세스를 단순화 해주는 툴
  • Builds
  • Documentation
  • Reporting
  • Dependencies
  • SCMs
  • Releases
  • Distribution
  • mailing list

POM이란?

  • Project Object Model의 약자
  • XML file
  • pom.xml에 있음
  • 다음의 정보를 포함
    • project dependencies
    • plugins
    • goals
    • build profiles
    • project version
    • developers
    • mailing list

라이프사이클

  • 미리 정해진 빌드 순서를 라이프사이클이라 부름
  • 라이프사이클의 각 빌드 단계를 페이즈라고 부름
    • compile: 소스코드를 컴파일함
    • test: 단위테스트 실행
    • package: jar/war로 패키징
    • install: war/jar을 로컬 저장소에 배포 (USER_HOME\.m2)
    • deploy: war/jar을 원격 저장소에 배포 (maven central)
    • clean: 산출물 삭제
    • site: 문서생성
    • site-deploy: 문서를 배포

의존성 관리!

  1. 저장소 종류
    1. 중앙 저장소: 메이븐 저장소
    2. 원격 저장소: 각 회사나 오픈소스재단등에서 운영하는 저장소
    3. 로컬 저장소: 개발자 PC의 저장소
  2. 의존성 관리방법
    1. pom.xml에 <dependencies>태그로 관리하며 groupId, artifactId,version and scope등을 입력 => 자동으로 라이브러리가 다운로드되고 import가 가능해짐

댓글

이 블로그의 인기 게시물

XPath와 Appium과 Python

Gradle