상단

Maven 2.0.8에 대한 전반적인 사항을 정리한다.
 
Maven은 Java 프로젝트 관리와 통합 관리 도구이다.

 

[http://maven.apache.org/guides/index.html](http://maven.apache.org/guides/index.html)를 번역합니다.
Maven에 대해 관심이 많으신 분은 같이 동참하여 주세요.

설치 가이드


아래 설치 가이드는 Windows Server 2003을 기준으로 작성한 것 입니다. 설치 환경이 틀릴 경우에는 별도의 주석을 달아 주세요. 

 

설치전 사전 준비 사항

  • [Java SE Development Kit 6 Update 4 (JDK 1.6.0_04-b12)](JDK 6.0.md) 설치

 
 

Maven 설치

 

  • apache-maven-2.0.8-bin.zip 파일의 압축을 풀어 d:/OpenBiz/11_tools/maven208 에 복사한다.

 

  • Maven의 지역 보관소(Local Repository)를 설정한다.

  • *d:/OpenBiz/91_workspace/mavenRepository 디렉토리를 생성한다.

  • *%MAVEN_HOME%/conf/settings.xml 파일에서 다음과 같이 수정한다.

 
 file:///d:/OpenBiz/91_workspace/mavenRepository

  • Maven 설치 후 사용하기 위해서 필요한 환경을 설정한다.

    • M2_HOME=d:/OpenBiz/11_tools/maven208

    • PATH=d:/OpenBiz/11_tools/maven208/bin (기존 PATH에 추가)

    • MAVEN_OPTS=-Xmx512m (필요시 설정)
      바탕화면의 "내 컴퓨터"에서 오른 마우스를 클릭한 후 "속성"을 선택한다. "고급" 탭에서 하단에 있는 "환경 변수" 버튼을 누른다. 위에 명시한 환경 변수를 추가 또는 수정한다. 
      환경 설정


  • 도스창에서 설치된 Maven이 정상적으로 동작하는지 확인한다.

 
  1. "시작" 메뉴를 누른 후 "실행" 메뉴를 선택한다.

  2. 입력 화면에서 "cmd"를 입력하고 "확인" 버튼을 눌러 도스창을 띄운다.

  3. 다음 명령을 도스창에서 실행한다.

 
 C:\> mvn --version
 Maven version: 2.0.8
 Java version: 1.6.0_04
 OS name: "windows 2003" version: "5.2" arch: "x86" Family: "windows"

  • 네트워크 설정과 관련해서 추가 설정이 필요할 수도 있다. 이는 Maven Configuring Guide를 참고하라.

 

CentOS에서 maven 설치


  • Maven 설치

 
 wget http://apache.tt.co.kr/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.zip
 unzip apache-maven-3.0.5-bin.zip
 
 mv apache-maven-3.0.5 /appl/maven
 
  • vi .bashrc

 
 export M2_HOME=/appl/maven
 export PATH=${PATH}:${M2_HOME}/bin
 
  • Local Repository 설정

    • Default Repository : ~/.m2/repository

    • Local Repository를 변경하려면 settings.xml 파일에서 설정 부분이 주석 밖에 위치해야 합니다.

 
 mkdir /tmp/mavenRepo
 vi /appl/maven/conf/settings.xml
     /tmp/mavenRepo
 
  • Maven 버전 확인

 
 mvn -version
 

사용자 가이드


 

주요 구성 요소

 

{| border="1" align="center" cellspacing="0" cellpadding="1" style="width: 100%;" 
|- ! scope="col" style="background-color: rgb(204, 204, 204);" | 구성 요소

! scope="col" style="background-color: rgb(204, 204, 204);" | 설명 
|- | Plugin

Goal의 집합으로 실질적인 실행을 담당 한다.
http://maven.apache.org/plugins/index.html [1]
LifeCycle

-
Dependency
라이브러리의 의존성을 관리 한다.
-
Profile
배포 환경을 설정 한다.
-
POM
Project Object Model
-
group

-
artifactId

-
version

}
 

http://maven.apache.org/ref/3.2.2/maven-settings/settings.html

 
 
 

CLI

 

mvn [option] [phase] plugin:goal

 

Phase : Lifecycle의 각 단계

 

{| border="1" align="center" cellspacing="0" cellpadding="1" style="width:100%;" 
|- ! scope="col" style="background-color: rgb(204, 204, 204);" | Phase

! scope="col" style="background-color: rgb(204, 204, 204);" | 설명 
|- | style="text-align: center;" | clean

maven을 통해 생성된 것을 모두 삭제 한다.
style="text-align: center;"
컴파일 한다. (build)
-
style="text-align: center;"
테스트 한다. (test)
-Dmaven.test.skip=true : 테스트를 하지 않는다.
-
style="text-align: center;"
compile된 결과물을 패키지 파일로 생성 한다. (package)
-

Build, Package, Test 결과 정리 및 문서화 (report)
-
style="text-align: center;"
패키지 파일을 로컬 저장소에 배포 한다. (release)
-
style="text-align: center;"
패키지 파일을 원격 저장소에 배포 한다. (release)
}
 
 
 

-P profile명 : 환경에 따라 다르게 설정 한다.

 

관리자 가이드


 

m2eclipse 설치

 
  • [m2eclipse 설치](Eclipse.md#m2eclipse 설치.md)

 
 

[Documentation](


http://maven.apache.org/guides/index.html)

 

Getting Started with Maven

 
 

Introductions

 
  • The Build Lifecycle

  • The POM

  • Profiles

  • Repositories

  • Standard Directory Layout

  • The Dependency Mechanism

 
 

'''Plugins'''

 
  • Plugin Development

  • Configuring Plug-ins

  • The Plugin Registry

  • Plugin Prefix Resolution

  • Developing Ant Plugins

  • Developing Java Plugins

 
 

'''Site'''

 
  • Creating a Site

  • The APT Format

  • Snippet Macro

 
 

'''Archetypes'''

 
  • What is an Archetype

  • Creating Archetypes

 
 

'''Upgrading'''

 
  • From Maven 1.x to Maven 2.x

  • Using Maven 1.x repositories with Maven 2.x

  • Relocation of Artifacts

 
 

'''Repositories'''

 
  • Installing 3rd party JARs to Local Repository

  • Deploying 3rd party JARs to Remote Repository

  • Coping with Sun JARs

  • Remote repository access through authenticated HTTPS

 
 

Guides

 
  • Creating Assemblies

  • Configuring Archive Plugins

  • Configuring Maven

  • Mirror Settings

  • Deployment and Security Settings

  • Embedding Maven 2.x

  • Generating Sources

  • Working with Manifests

  • Maven Classloading

  • Using Multiple Repositories

  • Using Proxies

  • Using the Release Plugin

  • Using Ant with Maven

  • Using Modello

  • Webapps

  • Using Extensions

  • Building For Different Environments with Maven 2

 
 

'''Testing'''

 
  • Reusable Test JARs

 
 

'''Maven Tools and IDE Integration'''

 
  • Eclipse

  • IDEA

  • Netbeans 4.0 (4.1 and 5.0)

  • Maven 2.x Auto-Completion Using BASH

 
 

Development Guides

 
  • Building Maven from Scratch

  • Developing Maven

  • Plugin Snapshot Repositories

  • The Plugin Documentation Standard

 
 

The Maven Community

 
  • The Maven Community

  • Helping with Maven

  • Guide for New Committers

  • Testing Development Versions of Plugins

  • 3rd Party Resources

 
 

'''Conventions'''

 
  • Maven Conventions

  • Naming Conventions

  • When You Can't Use the Conventions

 
 

'''The Central Repository'''

 
  • Uploading Artifacts to the Central Repository

  • Improving the Repository

 
 

References

 
  • POM Overview (Technical Project Descriptor )

  • Settings Overview (Technical Settings Descriptor )

  • Core Plug-ins List

  • Mojo API

  • Glossary

  • Maven Quick Reference Card - PDF

 
 

Javadoc API

 

Here is some useful Javadoc API links to the current version of Maven:

 
  • Maven Artifact

  • Maven Reporting

  • Maven Plugin API

  • Maven Model

  • Maven Core

  • Maven Settings

 
 

You could also browse the full technical documentation references of the current version of Maven here .

 

[Running Maven](


http://maven.apache.org/run-maven/index.html)

 

[Maven Users Centre](


http://maven.apache.org/users/index.html)

 

[Plugin Developers Centre](


http://maven.apache.org/plugin-developers/index.html)

 

[Maven Repository Centre](


http://maven.apache.org/repository/index.html)

 

[Maven Developer Centre](


http://maven.apache.org/developers/index.html)

 

[External Resources](


http://maven.apache.org/articles.html)

 

[Wiki](


http://docs.codehaus.org/display/MAVENUSER/Home)

 

관련 사이트


 
 
 

참고 문헌


 
 

Artifact ID

 
 

분류: 오픈소스 
Build_Tools 
Java

최종 수정일: 2024-09-30 12:26:18

이전글 :
다음글 :