모종닷컴

메이븐(Maven)이란? 본문

Programming/JAVA

메이븐(Maven)이란?

모종 2018. 3. 17. 15:37
반응형

Maven이란?


Java기반 프로젝트의 *라이프사이클 관리를 목적으로 하는 빌드 도구이다. 컴파일과 빌드를 동시에 수행, 테스트를 병행하거나 서버 측 Deploy 자원을 관리할 수 있는 환경을 제공한다. 또한 라이브러리 관리 기능도 내포하고 있다. Java로 개발하다 보면 다양한 라이브러리를 필요로 하게 되는데, *pom.xml 파일에 필요한 라이브러리만 적으면 Maven이 알아서 다운받고 설치해주고 경로까지 지정해준다.


프로젝트를 진행하다 보면 라이브러리들을 많이 활용하게 됩니다. 점점 많아지는 라이브러리들을 일일히 관리하기 힘들어집니다. 하지만 Maven을 이용하게 된다면 코드 몇줄로 필요한 라이브러리를 작동시키고 그 라이브러리가 필요로 하는 다른 라이브러리(의존 라이브러리)들까지 자동으로 관리해줍니다. 


* Life cycle      : 논리적인 작업 흐름

* pom.xml       : Project Object Model, 메이븐이 프로젝트를 처리하는 필요한 정보를 제공하는 파일

* Artifact         : 프로젝트에 필요한 jar, war, pom 등등

* Deploy         : 아티페그를 로컬 저장소에 저장하는 행위


Maven의 활용


1. Build

- 소스 코드를 컴파일 한다

- 테스트 코드를 컴파일 한다

- 기타 패키지 생성을 위한 바이너리를 생성


2. Package

- 배포 가능한 jar, war, exe 파일 등을 생성


3. Test

- 단위 테스트(Unit test) 등을 실행


4. Report

- 빌드/패키지/테스트 결과를 정리하고, 빌드 수행 리포트를 생성


5. Release

- 빌드 후 생성된 아티팩트를 로컬 혹은 원격 저장소에 저장한다.



MAVEN 기초 사용법


http://javacan.tistory.com/entry/MavenBasic











출처 :

https://namu.wiki/w/Maven

https://www.slideshare.net/sunnykwak90/ss-43767933


반응형