개발일지/SPRING

[SPRING] Maven, pom 파일 이해하기

양쏘쏘 2021. 3. 17. 00:00
728x90
반응형

 

Maven

: 프로젝트를 관리하는 도구로

  빌드 자동화 기능과 프로젝트 관리 기능을 제공함

 

pom.xml

- 프로젝트 관련 라이브러리(jar 파일)을 다운로드 및 관리

- 정형화된 프로젝트 디렉토리 구조 관리

- 빌드 프로세스 관리

- 의존성 관리 기능

   1) 로컬 저장소

      USER_HOME\.m2\repository

   2) 중앙 저장소 

      http://mvnrepository.com

   3) 원격 저장소

 

※로컬 저장소 -> 중앙 저장소 -> 원격 저장소 순으로 라이브러리를 검색함

    만약 pom.xml에서 문제가 발생한다면 아래의 해결방법을 참고하길

   [pom.xml 에러해결방법]

    ① 로컬 저장소 삭제

        USER_HOME\.m2\repository 해당 경로 아래의 라이브러리를 삭제 후 재설치

    ② 네트워크 연결 확인

        일반적으로 mvnrepository를 통해 다운로드 받고 이는 웹을 통해 다운받는 것이기 때문에

        네트워크가 불안한 경우 정상적으로 다운로드가 안될 수 있다.

    ③ 라이브러리 버전 확인

        pom.xml에 아예 잘못된 라이브러리 혹은 버전 정보를 기입해둔 경우 

        mvnrepository에 접속해서 해당 버전을 확인해봐야한다.

    ④ maven clean

        프로젝트 > Run As > Maven clean 진행

 

Pom.xml 예시

<dependencies> 
 <dependency>
  <groupId>junit</groupId> 
  <artifactId>junit</artifactId> 
  <version>3.8.1</version> 
  <scope>test</scope>
</dependency> 
</dependencies>

위와 같이 xml을 작성하였다면 junit-3.8.1.jar이 다운로드되고 junit test 시 적용이 가능합니다. 

 

scope 설정을 통해 의존 라이브러리를 적용할 시점을 제한할 수 있습니다

scope는 기본으로 compile이고 provided, runtime, test, system, import가 있습니다.     

scope는 빌드 라이프 사이클과 관련되기 때문에 다음 글에서 라이프사이클을 알아보겠습니다. 

 

[개발자의 시각] 

Spring의 장점 중에 하나인 pom.xml은 라이브러리 관리가 용이하기 때문에 협업할 때 편합니다.

그런데 개인 프로젝트할 때는 문제가 없다가 협업코드 받아온 후 문제가 생기는 경우가 종종 있기 때문에

pom.xml 에러해결방법을 기억해두는 것이 좋습니다. 

 

728x90