Spring을 사용하기 위해 Maven Build가 필요함
Maven
- 자바 개발의 사실상 표준 빌드 툴(이전에는 ANT를 많이 사용)
- XML 설정파일을 사용
- groovy라는 언어로 설정을 하는 gradle이 새로 등장
- 여러 가지 외부 라이브러리들을 관리해주는 기능도 함
- Maven의 특징
- Convention over Configuration(CoC)
- 표준화된 애플리케이션 초기 설정 및 작업을 제공해주는 것
- 개발 디렉토리 구조를 따름
- 컴파일 - 테스트 - 패키지 등 빌드 단계를 정해둠
- 의존성 관리를 자동으로 수행
- Maven 중앙 저장소를 제공하여 Java 라이브러리에 대한 생태계 조성.
- 라이브러리도 버전이 바뀌고, 물고 물리는 관계로 되어 있기 때문에 의존성 충돌이 생길 수 있는데 중앙 저장소가 이런 문제를 해결해 줌
- POM.XML(메이븐의 메인 설정파일)
- 프로젝트 루트에 위치
- 메이븐 프로젝트를 의미, IDE에서 불러오기가 쉬움
Maven 프로젝트 설정 시 필수사항
프로젝트 명
그룹 아이디
- 주로 프로젝트 생성 조직이나 기관의 도메인 명 역순으로 표기
- Top-level pachage명으로 같이 사용됨
버전
- Maven 중앙저장소에는 버전 별로 프로젝트를 모두 가지고 있기 때문에 버전을 꼭 기재해 주어야 함.
- SNAPSHOT 버전(개발 버전), RELEASE(배포 버전)사용