아파치 라이선스로 배포되는 오픈 소스 소프트웨어이며, 자바기반 프로젝트의 라이프사이클 관리를 위한 빌드 도구
pom.xml파일에 필요한 라이브러리만 적으면 Maven Repository에서 필요한 라이브러리를 자동으로 다운받고 설치해주고 경로까지 지정해준다.
대부분 필요한 라이브러리를 추가하기 위해 저장소(repository)와 의존성(dependency)부분만을 많이 사용하게된다.
pom.xml을 구성하는 태그들은 다음과 같다.
프로젝트를 구분하는 값으로 사용
프로젝트를 구분하는 값으로 사용, 프로젝트 명을 사용
POM 내에서 공통적으로 사용되는 값들을 설정, pom.xml 파일의 다른 곳에 사용할 때 이 값을 사용하려면 ${org.springframework-verison} 명시
라이브러리를 받아올 저장소를 지정
프로젝트에서 사용되는 라이브러리들을 지정
프로젝트 빌드 방법을 지정
[Window] - [Preferences] - [Maven] - [User Settings] 에서 Maven 설정을 해줄 수 있다.
Maven은 기본설정과 사용자가 지정한 설정을 가진 pom.xml 파일의 내용을 합한 Effective POM으로 동작한다.
사용자가 지정한 설정을 사용하려면, USER_HOME/.m2 폴더 아래에 settings.xml 파일을 생성하고, 아래의 User Settings에 지정해주면 된다.
Local Repository의 위치는 USER_HOME/.m2/repository이며, 글로벌 저장소에서 가져온 라이브러리가 groupId 별로 저장되어 있다.