"Maven"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
잔글 (→참고 문헌) |
잔글 |
||
(같은 사용자의 중간 판 3개는 보이지 않습니다) | |||
74번째 줄: | 74번째 줄: | ||
mvn -version | mvn -version | ||
− | ==관리자 가이드== | + | == 사용자 가이드 == |
− | ===m2eclipse 설치=== | + | |
− | *[[ | + | === 주요 구성 요소 === |
+ | |||
+ | {| 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의 집합으로 실질적인 실행을 담당 한다.<br/>[http://maven.apache.org/plugins/index.html [1]]<br/> | ||
+ | |- | ||
+ | | LifeCycle | ||
+ | | <br/> | ||
+ | |- | ||
+ | | Dependency | ||
+ | | 라이브러리의 의존성을 관리 한다. | ||
+ | |- | ||
+ | | Profile | ||
+ | | 배포 환경을 설정 한다. | ||
+ | |- | ||
+ | | POM | ||
+ | | Project Object Model | ||
+ | |- | ||
+ | | group | ||
+ | | <br/> | ||
+ | |- | ||
+ | | artifactId | ||
+ | | <br/> | ||
+ | |- | ||
+ | | version | ||
+ | | <br/> | ||
+ | |} | ||
+ | |||
+ | [http://maven.apache.org/ref/3.2.2/maven-settings/settings.html 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;" | compile | ||
+ | | 컴파일 한다. (build) | ||
+ | |- | ||
+ | | style="text-align: center;" | test | ||
+ | | 테스트 한다. (test)<br/>-Dmaven.test.skip=true : 테스트를 하지 않는다.<br/> | ||
+ | |- | ||
+ | | style="text-align: center;" | package | ||
+ | | compile된 결과물을 패키지 파일로 생성 한다. (package) | ||
+ | |- | ||
+ | | <br/> | ||
+ | | Build, Package, Test 결과 정리 및 문서화 (report) | ||
+ | |- | ||
+ | | style="text-align: center;" | install | ||
+ | | 패키지 파일을 로컬 저장소에 배포 한다. (release) | ||
+ | |- | ||
+ | | style="text-align: center;" | deploy | ||
+ | | 패키지 파일을 원격 저장소에 배포 한다. (release) | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | -P profile명 : 환경에 따라 다르게 설정 한다. | ||
+ | |||
+ | == 관리자 가이드 == | ||
+ | |||
+ | === m2eclipse 설치 === | ||
+ | |||
+ | *[[Eclipse#m2eclipse 설치|m2eclipse 설치]] | ||
==[http://maven.apache.org/guides/index.html Documentation]== | ==[http://maven.apache.org/guides/index.html Documentation]== |
2016년 8월 21일 (일) 00:06 기준 최신판
Maven 2.0.8에 대한 전반적인 사항을 정리한다.
Maven은 Java 프로젝트 관리와 통합 관리 도구이다.
- 홈페이지 : http://maven.apache.org/
- 다운로드 : http://maven.apache.org/download.html
- 라이센스 : Apache License Version 2.0
- 플랫폼 : Windows, Unix, JDK 1.4+
http://maven.apache.org/guides/index.html를 번역합니다.
Maven에 대해 관심이 많으신 분은 같이 동참하여 주세요.
목차
설치 가이드
아래 설치 가이드는 Windows Server 2003을 기준으로 작성한 것 입니다. 설치 환경이 틀릴 경우에는 별도의 주석을 달아 주세요.
설치전 사전 준비 사항
Maven 설치
- 다운로드 사이트에서 "apache-maven-2.0.8-bin.zip"를 선택하여 다운로드 한다.
- 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 파일에서 다음과 같이 수정한다.
<localRepository>file:///d:/OpenBiz/91_workspace/mavenRepository</localRepository>
- Maven 설치 후 사용하기 위해서 필요한 환경을 설정한다.
- M2_HOME=d:/OpenBiz/11_tools/maven208
- PATH=d:/OpenBiz/11_tools/maven208/bin (기존 PATH에 추가)
- MAVEN_OPTS=-Xmx512m (필요시 설정)
- 바탕화면의 "내 컴퓨터"에서 오른 마우스를 클릭한 후 "속성"을 선택한다. "고급" 탭에서 하단에 있는 "환경 변수" 버튼을 누른다. 위에 명시한 환경 변수를 추가 또는 수정한다.
- 도스창에서 설치된 Maven이 정상적으로 동작하는지 확인한다.
- "시작" 메뉴를 누른 후 "실행" 메뉴를 선택한다.
- 입력 화면에서 "cmd"를 입력하고 "확인" 버튼을 눌러 도스창을 띄운다.
- 다음 명령을 도스창에서 실행한다.
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 <localRepository>/tmp/mavenRepo</localRepository>
- Maven 버전 확인
mvn -version
사용자 가이드
주요 구성 요소
구성 요소 | 설명 |
---|---|
Plugin | Goal의 집합으로 실질적인 실행을 담당 한다. [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의 각 단계
Phase | 설명 |
---|---|
clean | maven을 통해 생성된 것을 모두 삭제 한다. |
compile | 컴파일 한다. (build) |
test | 테스트 한다. (test) -Dmaven.test.skip=true : 테스트를 하지 않는다. |
package | compile된 결과물을 패키지 파일로 생성 한다. (package) |
Build, Package, Test 결과 정리 및 문서화 (report) | |
install | 패키지 파일을 로컬 저장소에 배포 한다. (release) |
deploy | 패키지 파일을 원격 저장소에 배포 한다. (release) |
-P profile명 : 환경에 따라 다르게 설정 한다.
관리자 가이드
m2eclipse 설치
Documentation
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
Maven Users Centre
Plugin Developers Centre
Maven Repository Centre
Maven Developer Centre
External Resources
Wiki
관련 사이트
참고 문헌
- Apache Ant
- Maven: The Definitive Guide
- Artifactory : 사내 Maven Repository 설치 소프트웨어, Maven 강좌 6 - Artifactory를 이용하여 Maven Repository 세팅하기
- Project management: Maven makes it easy
- AppFuse와 Maven을 활용한 프로젝트 생성