티스토리 뷰

Study/Spring

[Spring] pom.xml

그징그징 2018. 12. 24. 13:51

[Spring] pom.xml

(Project Object Model)


Maven은 pom.xml(빌드 파일)을 사용하여 빌드 정보를 기술한다.

(다양한 라이브러리를 관리해준다.)


복습 : C:\Users\사용자계정\.m2\repository 안에 관련 파일들이 존재






<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

<modelVersion>4.0.0</modelVersion>

<groupId>com.sora</groupId>

<artifactId>shop</artifactId>

<name>Spring_Shop</name>

<packaging>war</packaging>

<version>1.0.0-BUILD-SNAPSHOT</version>

<properties>

<java-version>1.6</java-version>

<org.springframework-version>3.1.1.RELEASE</org.springframework-version>

<org.aspectj-version>1.6.10</org.aspectj-version>

<org.slf4j-version>1.6.6</org.slf4j-version>

</properties>

<dependencies>

<dependency>

...

</dependency> 

</dependencies>

    <build>

        <plugins>

            <plugin>

                ...

            </plugin>

    </build>

</project>


(pom.xml 간략화)




1. <project> 루트 태그


<project> 루트 태그 내 모드 정보를 기술한다.

xmlns / xmlns:xsi / xsi:schemaLocation 속성은 모두 정해진 값으로 복사해서 사용하면 된다.


modelVersion

 pom 모델 버전

groupId

 프로젝트마다 접근할 수있는 고유한 이름.(제작자와 회사, 단체등을 식별)

artifactId

 버전 정보를 뺀 이름으로 소문자를 사용하고 특수문자를 사용하지 않는다. 프로젝트에 할당한 고유 ID

name

 프로젝트 이름

packaging

 패키지의 종류(jar, war, pom등이 있음) Web 어플리케이션은 war로 지정

version

 프로젝트와 관련된 Web 사이트의 주소 

properties

 pom.xml에서 사용하는 속성 값을 모아둔다.

dependencies

 라이브러리 정보를 기술(dependency 태그 사용)

build

 빌드 정보(plugins - plugin 태그 사용)





2. <properties>


기본적으로 정의되어진 속성값으로

dependencies 태그 안이나 build 태그 등에 ${java-version} 으로 가져와 쓸수있다.

(spring legacy project로 생성시 default로 jdk 1.6, spring 3.1.1 인데 필요시 변경하여 사용해야한다.)

(aspectj -> aop 와 관련된 버전으로 maven 사이트에서 버전 수정 후 사용)

(org.slf4j-version -> log와 관련)



3. <dependencies>



<dependencies> 태그 안에 <dependency> 태그를 사용하여

필요한 라이브러리 정보를 기술한다.

(https://mvnrepository.com/ 사이트에 접속해서 필요한 라이브러리 검색 후 추가)

DB사용을 위한 라이브러리나 servlet 버전, JUnit을 사용하기 위한 라이브러리 등 여러가지를 추가할수있다.

추가 후 저장하면 자동으로 Maven dependencies 에 jar파일이 추가된 것을 확인할수있다.(디렉터리)




4.<build>



<plugins> 태그 내부에 <plugin>을 여러개 추가 가능하다.

빌드에서 사용할 플러그인을 추가한다.

기본적으로 몇몇 플러그인은 최상위 pom으로 부터 상속받아 실행된다.

(해당 태그는 잘 모르겠다 ㅠㅠ 진행하면서 계속 정리해야될듯하다.)


maven-compiler-plugin 의 1.6 으로 된 부분을 1.8로 바꿔줘야 java-version 1.8로 변경시 에러가 안난다. 동일하게 맞춰줘야한다^.^

'Study > Spring' 카테고리의 다른 글

[Spring] Mybatis 연동 (1)  (0) 2018.12.24
[Spring] Mysql과 JUnit (2)  (0) 2018.12.24
[Spring] root-context.xml와 servlet-context.xml  (0) 2018.12.24
[Spring] Mysql과 JUnit (1)  (0) 2018.12.24
[Spring] 디렉터리 구조  (0) 2018.12.24
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함