Apache Maven

Bách khoa toàn thư mở Wikipedia
Bước tới: menu, tìm kiếm
Apache Maven
Maven logo.svg
Phát triển bởi Apache Software Foundation
Bản mới nhất 3.2.1 (21 tháng 2, 2014; 9 tháng trước) sửa dữ liệu
Được viết bằng Java
Hệ điều hành Cross-platform
Tình trạng phát triển Active
Thể loại Build Tool
Giấy phép Apache License 2.0
Website http://maven.apache.org

Maven là công cụ quản lý và thiết lập tự động 1 dự án phần mềm. Chủ yếu dùng cho các lập trình viên java, nhưng nó cũng có thể được dùng để xây dựng và quản lý các dự án dùng C#, Ruby, Scala hay ngôn ngữ khác. Maven phục vụ mục đích tương tự như Apache Ant, nhưng nó dựa trên khái niệm khác và cách hoạt động khác. Maven được quản lý bởi Apache Software Foundation, nó là một phần của dự án Jakarta Project.

Maven dùng khái niệm Project Object Model (POM) để mô tả việc build project, các thành phần phụ thuộc và các module. Nó định nghĩa trước các target cho việc khai báo task, trình biên dịch, đóng gói và thứ tự hoạt động để mọi việc diến ra tốt nhất.

Maven tải các thư viện, plug-in từ 1 hoặc nhiều repositories. Maven cung cấp việc hỗ trợ tải file từ repository trung tâm của Maven 2 [2] và các repositories khác. Cũng có thể upload các sản phẩm lên repository sau khi đã build xong.

Maven được xây dựng dựa trên kiến trúc plugin - cho phép sử dụng bất kỳ ứng dụng điều khiển nào thông qua đầu vào tiêu chuẩn. Về mặt lý thuyết, điều này cho phép bất kỳ ai cũng có thể viết các plugin để giao tiếp với các build tool (trình biên dịch, unit test tool, etc) cho bất kỳ ngôn ngữ nào khác. Nhưng trong thực tế, hỗ trợ và sử dụng cho các ngôn ngữ khác đã bị thu hẹp. Hiện tại thì plugin cho.Net đã có và vẫn được duy trì [3], và một plugin cho C/C++ cũng được duy trì cho Maven 1.[4]

Ví dụ[sửa | sửa mã nguồn]

Một project Maven được cấu hình sử dụng Project Object Model, nó được lưu trong file pom.xml. Một ví dụ nhỏ:

<project>
  <!-- model version is always 4.0.0 for Maven 2.x POMs -->
  <modelVersion>4.0.0</modelVersion>
 
  <!-- project coordinates, i.e. a group of values which
       uniquely identify this project -->
 
  <groupId>com.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <version>1.0</version>
 
  <!-- library dependencies -->
 
  <dependencies>
    <dependency>
 
      <!-- coordinates of the required library -->
 
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
 
      <!-- this dependency is only used for running and compiling tests -->
 
      <scope>test</scope>
 
    </dependency>
  </dependencies>
</project>

Tham khảo[sửa | sửa mã nguồn]

Sách[sửa | sửa mã nguồn]

Available for free as PDF download or online reading: http://www.sonatype.com/documentation/books

Xem thêm[sửa | sửa mã nguồn]

Liên kết ngoài[sửa | sửa mã nguồn]

Bản mẫu:Apache