의존성 관리 이해

Crow·2021년 8월 2일
0
post-thumbnail

springboot maven 프로젝트는 pom.xml을 통해서 의존성(dependency)을 관리한다.

학습목표

springboot는 어떻게

  • 프로젝트 생성 시에 수많은 의존성들을 가져오는걸까?
  • 의존성 정의 시에 버전 명시를 하지 않아도 적절한 버전으로 가져오는걸까?


Parent Pom

  • spring-boot-dependencies
    • spring-boot-starter-parent
      • pom.xml

pom.xml은
spring-boot-starter-parent 라는 parent pom을,

spring-boot-starter-parent는
spring-boot-dependencies 라는 parent pom을. . .

즉, pom.xml은 spring-boot-dependencies의
<properties>와 <dependencyManagement>의 정보를 상속받아 오기 때문에
각 의존성들에 대하여 버전을 명시하지 않아도 parent가 관리하는 버전으로
알아서 사용할 수 있다.

  • 자신이 따로 사용하기 원하는 버전이 있거나, spring-boot-dependencies가 지원하지 않는 의존성을 추가하는 것이라면?
    • 당연히 pom.xml에 의존성을 추가할 때 따로 버전 명시가 필요하다.



Spring Boot Starter

  • 서로 연관된 의존성 설정들을 하나로 묶어놓은 의존성 집합체.
  • 사전에 미리 정의 된 pom.
  • 프로젝트에 필요한 다수의 의존성 설정들을 Starter가 다 포함하고 있기 때문에 pom.xml에서 starter만 의존성 추가를 해주면 일관성 있고 편리하게 작업을 할 수 있게 된다.
profile
올빼미를 사냥한 까마귀에서 진화한 독수리

0개의 댓글

관련 채용 정보