본문 바로가기
Spring

[Spring] Maven 의존성 관리와 pom.xml

by jane.dev 2021. 9. 9.
반응형
의존성 관리
프로젝트 내부에서 어떤 외부의 라이브러리들을 사용할 것인지 정의하고 관리

 

JSP에서는 라이브러리나 유틸리티를 사용하기 위해 필요한 파일을 WEB-INF/lib 폴더에 넣어 관리했었는데,

시간이 지나면 구 버전의 라이브러리들을 구하기 어려워지거나 일부 라이브러리의 파일명에 버전 정보가 포함되지 않는 경우도 있음

Maven

Java 프로젝트의 빌트 툴(build tool)로

pom.xml 파일내부에 라이브러리 목록을 작성해 필요한 파일을 자동으로 찾아 추가하는 의존성 관리 기능이 있음


이클립스에는 Maven이 기본으로 포함되어 있으며 현재 버전 확인 가능

1. Eclipse - Preferences...

 

2. Maven - Installations


pom.xml

Project Object Model의 약자로 프로젝트 관리 및 빌드에 필요한 환경 설정, 의존성 관리 등의 정보 기술

사용될 라이브러리를 기술하면 네트워크를 통해 자동으로 로딩되며 해당 라이브러리가 작동하는데 필요한 다른 라이브러리까지 관리

<project>   
	<!-- 프로젝트 정보 -->
    <modelVersion>
        <!-- maven pom.xml의 모델 버전 -->
    </modelVersion>
    <groupId>
        <!-- 프로젝트를 구분하는 값, url의 역순 -->
    </groupId>
    <artifactId>
        <!-- 프로젝트에서 생성되는 기본 아티택트 고유 이름 -->
    </artifactId>
    <version>
        <!-- 애플리케이션의 버전 -->
    </version>
    <packaging>
        <!-- 패키징 유형(jar, war, ear, pom 등) -->
    </packaging>
    <name>
        <!-- 프로젝트 명 -->
    </name>
    <!-- pom.xml 에서 중복해서 사용되는 설정 값들을 지정 -->
    <properties> 
        <!-- <java-version>1.8</java-version>라고 설정하면 
              ${java-version }을 작성시 1.8과 같은 의미 -->
    </properties>
    <!-- 사용할 라이브러리 -->
    <dependencies>
        <!-- 의존성을 정의 -->
    </dependencies>
</project>