Maven - Plugin
Maven Plugins là gì?
Maven thực sự là một khung thực thi plugin, nơi mọi tác vụ thực sự được thực hiện bởi các plugin. Maven Plugins thường được sử dụng để -
- tạo tệp jar
- tạo hồ sơ chiến tranh
- biên dịch các tệp mã
- kiểm tra đơn vị mã
- tạo tài liệu dự án
- tạo báo cáo dự án
Một plugin thường cung cấp một tập hợp các mục tiêu, có thể được thực thi bằng cú pháp sau:
mvn [plugin-name]:[goal-name]
Ví dụ: một dự án Java có thể được biên dịch với mục tiêu biên dịch của maven-compiler-plugin bằng cách chạy lệnh sau.
mvn compiler:compile
Các loại plugin
Maven cung cấp hai loại Plugin sau:
Sr.No. | Loại & Mô tả |
---|---|
1 | Build plugins Chúng thực thi trong quá trình xây dựng và phải được định cấu hình trong phần tử <build /> của pom.xml. |
2 | Reporting plugins Chúng thực thi trong quá trình tạo trang web và chúng phải được định cấu hình trong phần tử <report /> của pom.xml. |
Sau đây là danh sách một số plugin phổ biến:
Sr.No. | Plugin & Mô tả |
---|---|
1 | clean Dọn dẹp mục tiêu sau khi xây dựng. Xóa thư mục đích. |
2 | compiler Biên dịch các tệp nguồn Java. |
3 | surefire Chạy các bài kiểm tra đơn vị JUnit. Tạo báo cáo thử nghiệm. |
4 | jar Tạo tệp JAR từ dự án hiện tại. |
5 | war Tạo tệp WAR từ dự án hiện tại. |
6 | javadoc Tạo Javadoc cho dự án. |
7 | antrun Chạy một tập hợp các nhiệm vụ kiến từ bất kỳ giai đoạn nào được đề cập đến của bản dựng. |
Example
Chúng tôi đã sử dụng maven-antrun-pluginrộng rãi trong các ví dụ của chúng tôi để in dữ liệu trên bảng điều khiển. Tham khảo chương Xây dựng hồ sơ. Hãy để chúng tôi hiểu nó theo cách tốt hơn và tạo một pom.xml trong thư mục 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>
Tiếp theo, mở bảng điều khiển lệnh và đi đến thư mục chứa pom.xml và thực hiện như sau mvn chỉ huy.
C:\MVN\project>mvn clean
Maven sẽ bắt đầu xử lý và hiển thị giai đoạn sạch của vòng đời sạch.
[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] Executing tasks
[echo] clean phase
[INFO] Executed tasks
[INFO] ------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------
[INFO] Total time: < 1 second
[INFO] Finished at: Sat Jul 07 13:38:59 IST 2012
[INFO] Final Memory: 4M/44M
[INFO] ------------------------------------------------------------------
Ví dụ trên minh họa các khái niệm chính sau:
Các plugin được chỉ định trong pom.xml bằng cách sử dụng phần tử plugin.
Mỗi plugin có thể có nhiều mục tiêu.
Bạn có thể xác định phase từ nơi plugin sẽ bắt đầu xử lý bằng cách sử dụng phần tử phase của nó. Chúng tôi đã sử dụngclean giai đoạn.
Bạn có thể cấu hình các tác vụ được thực thi bằng cách ràng buộc chúng với các mục tiêu của plugin. Chúng tôi đã ràng buộcecho nhiệm vụ với runmục tiêu của maven-antrun-plugin .
Sau đó, Maven sẽ tải xuống plugin nếu không có sẵn trong kho lưu trữ cục bộ và bắt đầu xử lý.