수색…


POM 구조

프로젝트 객체 모델은 Maven의 기본 단위이며 프로젝트 구조, 의존성 등을 정의합니다.

다음은 POM을 생성하기에 매우 미약합니다.

  • project 루트
  • modelVersion - 4.0.0 으로 설정해야합니다.
  • groupId - 프로젝트의 그룹 ID
  • artifactId - artifactId 의 ID (프로젝트)
  • version - 지정된 그룹의 아티팩트 버전

groupId , artifactIdversionMaven 좌표 라고하며 때로는 GAV로 축약됩니다. Maven 저장소에서 프로젝트의 결과 아티팩트를 고유하게 식별합니다 (전체 우주에서 그렇게 해야합니다 ).

최소 샘플 POM은 다음과 같습니다.

<project>
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.sample</groupId>
  <artifactId>sample-app</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</project>

POM 상속

상속은 POM의 가장 큰 자산입니다. POM에서 하위 POM으로 다음을 관리 할 수 ​​있습니다.

  • 의존성
  • 개발자와 공헌자
  • 플러그인 목록 (보고서 포함)
  • 일치하는 ID로 플러그인 실행
  • 플러그인 구성

다음은 상속을 가능하게합니다.

  <parent>
    <groupId>com.sample</groupId>
    <artifactId>sample-app-parent</artifactId>
    <version>1.0.0</version>
  </parent>

POM 구조는 다음과 같습니다.

<project>
  <parent>
    <groupId>com.sample</groupId>
    <artifactId>sample-app-parent</artifactId>
    <version>1.0.0</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.sample</groupId>
  <artifactId>sample-app</artifactId>
  <version>0.0.1-SNAPSHOT</version>
</project>

POM 집계

다중 모듈 프로젝트의 모듈은 계층 적 구조에서 집계됩니다.

루트 pom 패킹은 다음과 같아야합니다.

<packaging>pom</packaging>

다음은 프로젝트의 디렉토리 구조입니다.

 |-- sample-app
  \   `-- pom.xml
   |-- sample-module-1
   |   `-- pom.xml
   |-- sample-module-2
   |   `-- pom.xml

루트 POM :

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.sample</groupId>
  <artifactId>sample-app</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging>
 
  <modules>
    <module>sample-module-1</module>
    <module>sample-module-2</module>
  </modules>
  <dependencyManagement>
    ...
  </dependencyManagement>
</project>


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow