record logo record

Maven 이란?

프로젝트(라이브러리) 관리

기능1: 정형화된 프로젝트 디렉토리 구조 관리

web-maven_1

기능2: 의존성 관리기능(pom.xml): 편리한 라이브러리 관리 기능

<?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.doop</groupId>
	<artifactId>doop</artifactId>
	<name>doop</name>
	<packaging>war</packaging>
	<version>1.0.0-BUILD-SNAPSHOT</version>

	<properties>
		<java-version>1.8</java-version>
		<org.springframework-version>4.3.14.RELEASE</org.springframework-version>
		<org.aspectj-version>1.6.10</org.aspectj-version>
		<org.slf4j-version>1.6.6</org.slf4j-version>
	</properties>

	<dependencies>
		<!-- Spring -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${org.springframework-version}</version>
		</dependency>
        <!-- junit -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

web-maven_2

기능3: 빌드 프로세스를 관리(pom.xml)

Maven 의존성 검색 절차

빌드 자동화

web-maven_3

Maven 빌드 라이프사이클(lifecycle)

Maven Phase & Goal

web-maven_4

References