English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Maven hat die folgenden drei Standard-Lebenszyklen:
cleanVerarbeitung der Projekt-Bereinigung
default(oder build)Verarbeitung der Projekt-Deployment
siteVerarbeitung der Erstellung der Projekt-Website-Dokumentation
Jeder Lebenszyklus enthält eine Reihe von Phasen(phase). Diese Phasen sind wie die universellen Schnittstellen bereitgestellt durch Maven, und die Implementierung dieser Phasen wird durch Maven-Plugins abgeschlossen.
Wenn wir den Befehl mvn eingeben, zum Beispiel mvn clean, entspricht clean dem clean Phase des Clean-Lebenszyklus. Die spezifische Operation von clean wird jedoch von maven-clean-plugin realisiert.
Daher wird jede spezifische Implementierung jeder Phase des Maven-Lebenszyklus durch Maven-Plugins bereitgestellt.
Maven ist tatsächlich ein Framework, das durch Abhängigkeitsplugins ausgeführt wird, jede Aufgabe wird tatsächlich von Plugins erledigt. Maven-Plugins werden in der Regel verwendet, um:
Erstellen Sie Jar-Dateien
Erstellen Sie War-Dateien
Kompilieren Sie Code-Dateien
Kodierungseinheiten testen
Erstellen Sie Projekt-Dokumentation
Erstellen Sie Projektberichte
Plugins bieten in der Regel eine Sammlung von Zielen und können mit der folgenden Syntax ausgeführt werden:
<code>mvn [plugin-name]:[Ziel-name]</code>
Beispielsweise kann ein Java-Projekt maven verwenden-compiler-compile des Plugins-Ziel kompilieren, verwenden Sie den folgenden Befehl:
<code>mvn compiler:compile</code>
Maven bietet zwei Arten von Plugins an:
Typ | Beschreibung |
---|---|
Build-Plugins | Während der Erstellung ausführen und im Element pom.xml konfigurieren. |
Berichterstattungsplugins | Während des Generierungsprozesses der Website ausführen und im Element pom.xml konfigurieren. |
Nachstehend finden Sie eine Liste einiger häufig verwendeter Plugins:
Plugin | Beschreibung |
---|---|
clean | Bereinigen Sie nach der Erstellung Zieldateien. Löschen Sie das Zielverzeichnis. |
compiler | Kompilieren Sie Java-Quelldateien. |
surefile | Führen Sie JUnit-Unit-Tests aus. Erstellen Sie Testberichte. |
jar | Erstellen Sie ein JAR-Datei aus dem aktuellen Projekt. |
war | Erstellen Sie ein WAR-Datei aus dem aktuellen Projekt. |
javadoc | Erstellen Sie Javadoc für das Projekt. |
antrun | eine Sammlung von Ant-Aufgaben aus jeder beliebigen Phase des Bauprozesses auszuführen. |
haben wir in unserem Beispiel intensiv verwendet maven-antrun-plugin um Daten auf die Konsole auszugeben. Bitte sehen Sie Maven - Baukonfigurationsdatei Kapitel. Lassen Sie uns diese Inhalte auf eine bessere Weise verstehen, indem wir im Verzeichnis C:\MVN\project eine Datei pom.xml erstellen.
<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>/groupId> <artifactId>project</artifactId>/artifactId> <version>1.0/version> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId>/groupId> <artifactId>maven</artifactId>-antrun-plugin/artifactId> <version>1.1</version> <executions> <execution> <id>id.clean</id>/id> <phase>clean</phase>/phase> <goals> <goal>run</goal>/goal> </goals> <configuration> <tasks> <echo>clean phase</echo>/echo> </tasks> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>
Öffnen Sie nun den Befehlszeilen-Terminal und wechseln Sie zum Verzeichnis, in dem sich das Datei pom.xml befindet, und führen Sie den folgenden mvn-Befehl aus.
mvn clean
Maven beginnt mit der Verarbeitung und zeigt den 'clean'-Zustand des Lebenszyklus an.
[INFO] 搜索项目... [INFO] ------------------------------------------------------------------ [INFO] 构建未命名 - com.companyname.projectgroup:project:jar:1.0 [INFO] 任务-段:[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 将处理剩下的事情。它将下载本地仓库中获取不到的插件,并开始处理。