본문 바로가기

Build/Maven

05. Maven POM.xml

POM 파일은 project object model 의 약자이며 해당 파일은
 
항상 프로젝트의 root 디렉토리에 위치해야 한다.
 
그리고 이 파일은 프로젝트를 빌드하기 위한 여러 다양한 디테일한 정보를 포함하며
 
mvn 커맨드로 실행시 maven 은 이 POM 파일을 읽어 설정 정보를 찾으며 그리고 나서 goals 를 실행한다.
 
 

POM
 
pom.xml 에 아래 내용을 기술한다.
 
 
 

기본구조
 
<groupId>com.blidkaga.group</groupId>  
<artifactId>group-test</artifactId> 
<version>1.0.0-SNAPSHOT</version>
....
</project>
 
위는 가장 기본이 되는 POM 파일의 구조로 
 
groupId 는 보통 조직명을 의미하지만 실제로는 소스의 구조를 말하며 web 프로젝트의 경우 
 
보통 reversed domain 형태로 표시한다.
 
artifactId 는 project, library, plugin 등의 이름을 지칭한다.
 
그리고 version 은 빌드 버전을 의미한다.
 
이렇게 입력을 해서 maven 이 파싱할 때는 gropuId:artifactId:version 와 같이 version 이 겹치더라도
 
groupId 나 artifactId 가 달라지므로 프로젝트의 각 데이터들을 분기하는 기준으로 사용한다.
 
 

properties
 
빌드시 사용할 데이터를 프로퍼티로 제공한다.
 
프로퍼티 값을 사용시는 ${java-version} 으로 불러 사용한다.
 
  ....
      <properties> 
<java-version>1.6</java-version>
          .... 
 </properties>
</project>
 

plugins
 
mvn 명령어가 실행되면 실제로는 plugin 이 실행되어 build, clean, package 등의 작업을 진행한다.
 
  ....
     <build>
             <plugins>
                   <plugin>
                     ....
                   </plugin>
             </plugins>
     </build>
</project>
 

Dependencies
 
빌드가 실행되기 전에 필요한 jar 파일등의 dependency 를 기술한다.
 
해당 파일들은 빌드가 시작되기 전에 Maven 레포지토리에서 다운로드 된다.
 
  ....
     <dependencies>
             <dependency
                     .... 
             </dependency>
     </dependencies>
</project>
 
 
 

'Build > Maven' 카테고리의 다른 글

07. Maven plugin  (0) 2020.01.23
06. Maven phase  (0) 2020.01.23
04. Maven 기본 명령어  (0) 2020.01.23
03. Maven 템플릿  (0) 2020.01.23
02. Maven 설치  (0) 2020.01.23