밍래그로프 2020. 11. 26. 15:52

1.maven이란

maven은 프로젝트를 빌드,관리 해주는 도구이다.

 

              이클립스 maven 프로젝트 생성시 구조

 

 

2.의존성

dependency는 라이브러리다. 우리가 pom.xml에 dependency로 정의만 해주면 메이븐이 자신의 repository에서 해당하는 라이브러리를 검색해 추가해준다. 이런 모습을 '의존성 전이'라고 한다.

 

3. pom.xml

pom.xml 은 메이븐을 이용하는 프로젝트의 root에 존재하는 xml 파일이다. pom은 프로젝트 객체 모델(Project Object Model)을 뜻한다. 프로젝트 당 1개가 있다. 이것만 보면 프로젝트의 모든 설정, 의존성 등을 알 수 있다!!

엘리먼트

  • <groupId> : 프로젝트의 패키지 명칭

  • <artifactId> : artifact 이름, groupId 내에서 유일해야 한다.

    <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId>
  • <version> : artifact 의 현재버전 ex. 1.0-SNAPSHOT

  • <name> : 어플리케이션 명칭

  • <packaging> : 패키징 유형(jar, war 등)

  • <distributionManagement> : artifact가 배포될 저장소 정보와 설정

  • <parent> : 프로젝트의 계층 정보

  • <dependencyManagement> : 의존성 처리에 대한 기본 설정 영역

  • <dependencies> : 의존성 정의 영역

  • <repositories> : 이거 안쓰면 공식 maven 저장소를 활용하지만, 사용하면 거기 저장소를 사용

  • <build> : 빌드에 사용할 플러그인 목록을 나열

  • <reporting> : 리포팅에 사용할 플러그인 목록을 나열

  • <properties> : 보기좋게 관리가능, 보통 버전에 많이 쓴다.

<!-- properties 에 이렇게 추가하면 -->

<spring-version>4.3.3.RELEASE</spring-version>                               

<!-- dependencies 에 이렇게 쓸수 있다. -->

<version>${spring-version}</version>

 

참고및 출처: https://sjh836.tistory.com/131 [빨간색코딩]