English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Maven은 다음 세 가지 표준 생명주기를 가지고 있습니다:
clean:프로젝트 정리 처리
default(또는 build):프로젝트 배포 처리
site:프로젝트 사이트 문서 생성 처리
각 생명주기는 일련의 단계(phase)를 포함하고 있습니다. 이 phase는 Maven이 제공하는 통합 인터페이스로, 이 phase의 구현은 Maven 플러그인으로 완료됩니다.
mvn 명령어를 입력할 때 예를 들어 mvn clean, clean은 Clean 생명주기의 clean 단계와 일치합니다. 그러나 clean의 구체적인 작업은 maven-clean-plugin 로 구현됩니다.
따라서 Maven의 생명주기의 각 단계의 구체적인 구현은 Maven 플러그인으로 구현됩니다.
Maven은 실제로는 의존성 플러그인을 실행하는 프레임워크이며, 각 작업은 플러그인으로 완료됩니다. Maven 플러그인은 일반적으로 다음과 같이 사용됩니다:
JAR 파일 생성
WAR 파일 생성
코드 파일 컴파일
코드 단위 테스트
프로젝트 문서 생성
프로젝트 보고서 생성
플러그인은 일반적으로 목표의 집합을 제공하며 다음과 같은 문법으로 실행할 수 있습니다:
<code>mvn [플러그인-name]:[목표-name]/code>
예를 들어, Java 프로젝트는 Maven을 사용할 수 있습니다.-컴파일러-플러그인의 컴파일-목표 컴파일, 다음 명령어로 사용:
<code>mvn compiler:compile</code>
Maven은 다음 두 가지 타입의 플러그인을 제공합니다:
타입 | 설명 |
---|---|
빌드 플러그인 | 빌드 중 실행하고 pom.xml 파일의 요소에서 구성. |
보고서 플러그인 | 웹사이트 생성 중 실행하고 pom.xml 파일의 요소에서 구성. |
다음은 일반적으로 사용되는 플러그인 목록입니다:
플러그인 | 설명 |
---|---|
clean | 빌드 후 대상 파일 정리. 대상 디렉토리 삭제. |
컴파일러 | Java 소스 파일 컴파일. |
surefile | JUnit 단위 테스트 실행. 테스트 보고서 생성. |
jar | JAR 파일을 현재 프로젝트에서 빌드합니다. |
war | WAR 파일을 현재 프로젝트에서 빌드합니다. |
javadoc | Javadoc를 프로젝트에 생성합니다. |
antrun | 빌드 과정의 어떤 단계에서든 ant 작업 집합을 실행합니다. |
우리의 예제에서 많이 사용했습니다. maven-antrun-plugin 컨트롤 타블에 데이터를 출력하려면 확인하세요. Maven - 빌드 구성 파일 장. 이 부분의 내용을 더 나은 방식으로 이해하기 위해 C:\MVN\project 디렉토리에서 pom.xml 파일을 생성하세요.
<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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0/modelVersion <groupId>com.companyname.projectgroup/groupId> <artifactId>project/artifactId> <version>1.0/version> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins/groupId> <artifactId>maven-antrun-plugin/artifactId> <version>1.1</version> <executions> <execution> <id>id.clean</id> <phase>clean</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <echo>clean phase</echo> </tasks> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
다음으로, 명령 터미널을 열고 pom.xml이 있는 디렉토리로 이동한 후 다음 mvn 명령어를 실행하세요.
mvn clean
Maven은 clean 라이프사이클의 clean 단계를 처리하고 표시할 것입니다.
[INFO] 프로젝트 검색 중... [INFO] ------------------------------------------------------------------ [INFO] 빌드 이름 없음 - com.companyname.projectgroup:project:jar:1.0 [INFO] 작업-segment: [post-clean}] [INFO] ------------------------------------------------------------------ [INFO] [clean:clean {execution: default-clean}] [INFO] [antrun:run {execution: id.clean}] [INFO] 작업 실행 [echo] clean 단계 [INFO] 실행된 작업 [INFO] ------------------------------------------------------------------ [INFO] 빌드 성공 [INFO] ------------------------------------------------------------------ [INFO] 총 시간: < 1 second [INFO] 완료 시간: Sat Jul 07 13:38:59 IST 2012 [INFO] 최종 메모리: 4M/44M [INFO] ------------------------------------------------------------------
위 예제는 다음 주요 개념을 보여줍니다:
플러그인은 pom.xml에서 plugins 요소를 사용하여 정의됩니다.
각 플러그인은 여러 목표를 가질 수 있습니다.
단계를 정의할 수 있습니다. 플러그인은 phase 요소를 사용하여 처리를 시작합니다. 이미 사용한 것은 다음과 같습니다: clean 단계.
플러그인의 목표에 바인딩하여 실행할 작업을 설정할 수 있습니다. 이미 설정한 것은 다음과 같습니다: echo 작업을 Maven에 추가-antrun-플러그인의 실행 목표.
이렇게 하면, Maven이 나머지 일을 처리할 것입니다. 로컬 저장소에서 가져올 수 없는 플러그인을 다운로드하고 처리를 시작합니다.