English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Maven имеет следующие три стандартные жизненные циклы:
cleanПроцесс очистки проекта
default(или build)Процесс развертывания проекта
siteПроцесс создания документа сайта проекта
Каждый жизненный цикл включает в себя серию этапов (phase). Эти phase представляют собой единый интерфейс, предоставляемый Maven, а их реализация выполняется плагинами Maven.
Когда мы вводим команду mvn, например mvn clean, clean соответствует этапу clean в жизненном цикле Clean. Но конкретные действия clean выполняются maven-clean-plugin для реализации.
Таким образом, конкретная реализация каждого этапа жизненного цикла Maven реализуется Maven плагинами.
Maven на самом деле является фреймворком выполнения зависимостей плагинов, каждая задача фактически выполняется плагином. Maven плагины обычно используются:
Создание файла jar
Создание файла war
Компиляция кодовых файлов
Тестирование кодовых единиц
Создание документации проекта
Создание отчета проекта
Плагины обычно предоставляют набор целей и могут выполняться с использованием следующей синтаксис:
<code>mvn [plugin-name]:[goal-name]</code>
Например, Java проект может использовать compile-goal плагина maven-compiler-plugin, используя следующую команду:
<code>mvn compiler:compile</code>
Maven предоставляет два типа плагинов:
Тип | Описание |
---|---|
Плагины Build | Выполняются во время процесса 构建 и конфигурируются в элементе pom.xml. |
Плагины Reporting | Выполняется в процессе генерации веб-сайта и конфигурируется в элементе pom.xml. |
Ниже приведен список некоторых常用ных плагинов:
Плагины | Описание |
---|---|
clean | Очистка целевых файлов после 构建. Удаление целевого каталога. |
compiler | Компиляция Java исходных файлов. |
surefile | Запуск единичных тестов JUnit. Создание отчета по тестам. |
jar | Создание JAR файла из текущего проекта. |
war | Создание WAR файла из текущего проекта. |
javadoc | Генерация Javadoc для проекта. |
antrun | Запуск набора задач ant из любого этапа процесса 构建. |
Мы уже广泛应用了我们的实例 maven-antrun-plugin Чтобы выводить данные на экран управления, пожалуйста, посмотрите Maven - файл конфигурации 构建 Раздел. Давайте рассмотрим这部分 содержимого с помощью лучшего способа, создайте файл pom.xml в каталоге C:\MVN\project.
<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 жизненного цикла.
[INFO] Scanning for projects... [INFO] ------------------------------------------------------------------ [INFO] Building Unnamed - com.companyname.projectgroup:project:jar:1.0 [INFO] task-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] Завершено в: Сб Jul 07 13:38:59 IST 2012 [INFO] Конечная память: 4M/44M [INFO] ------------------------------------------------------------------
Пример выше показывает следующие ключевые концепции:
Плагины определяются с помощью элемента plugins в pom.xml.
Каждый плагин может иметь несколько целей.
Вы можете определить фазу, и плагин начнет обработку с помощью своего элемента phase. Мы использовали clean фаза.
Вы можете настроить выполняемые задачи, привязав их к целям плагина. Мы привязали echo задача к maven-antrun-plugin run Цель.
Вот и все, Maven обработает оставшиеся вещи. Он загрузит плагины, которые недоступны в локальном хранилище, и начнет обработку.