Apache Maven

Apache Maven
Phát triển bởiApache Software Foundation
Phiên bản ổn định
3.0[1] / 8 tháng 10 năm 2010 (2010-10-08)
Kho mã nguồn
Viết bằngJava
Hệ điều hànhCross-platform
Thể loạiBuild Tool
Giấy phépApache License 2.0
Websitehttp://maven.apache.org
Trạng tháiActive

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]

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]
  1. ^ Maven 3.0 Has Landed
  2. ^ “Maven 2 Central Repository”. Bản gốc lưu trữ ngày 17 tháng 9 năm 2018. Truy cập ngày 9 tháng 11 năm 2010.
  3. ^ Maven Plugin[liên kết hỏng]
  4. ^ Maven Native Plug-in
Available for free as PDF download or online reading: http://www.sonatype.com/documentation/books Lưu trữ 2010-08-22 tại Wayback Machine

Liên kết ngoài

[sửa | sửa mã nguồn]


Chúng tôi bán
Bài viết liên quan
Giới thiệu trang bị Genshin Impact - Vôi Trắng và Rồng Đen
Giới thiệu trang bị Genshin Impact - Vôi Trắng và Rồng Đen
Nhà Lữ Hành thân mến! Trong phiên bản mới "Vôi Trắng và Rồng Đen", ngoại trừ cách chơi mới, còn có rất nhiều trang bị mới. Hãy cùng chúng mình tìm hiểu cách nhận trang bị nhé!
Giới thiệu truyện: Liệu anh sẽ phải lòng một bộ xương khô chứ?
Giới thiệu truyện: Liệu anh sẽ phải lòng một bộ xương khô chứ?
Anh chàng thám hiểm ngày nọ vào lâu đài cổ thì phát hiện ra bộ xương của công chúa đã die cách đây rất lâu
Vị trí của 10 thanh kiếm sấm sét - Genshin Impact
Vị trí của 10 thanh kiếm sấm sét - Genshin Impact
Đủ 10 thanh thì được thành tựu "Muôn Hoa Đua Nở Nơi Mục Rữa"
Prompt Engineering: Ngôn ngữ của AI và tác động của nó đối với thị trường việc làm
Prompt Engineering: Ngôn ngữ của AI và tác động của nó đối với thị trường việc làm
Prompt engineering, một lĩnh vực mới nổi được sinh ra từ cuộc cách mạng của trí tuệ nhân tạo (AI), sẽ định hình lại thị trường việc làm và tạo ra các cơ hội nghề nghiệp mới