2011-09-26 31 views
5

Tôi biết rằng, chúng ta có thể sử dụng ANT và Maven cùng nhau để xây dựng dự án.Chúng ta có thể chạy các tập lệnh ANT thông qua POM.xml của Maven. Nhưng câu hỏi của tôi là chúng ta có thể chạy pom.xml thông qua build.xml của ANT không? tức là chúng ta có thể tạo xây dựng maven từ build.xmlChúng ta có thể sử dụng pom.xml vào ANT

Trả lời

8

Có, sử dụng maven ant tasks.

Trang liệt kê nhiều tác vụ maven có thể được tích hợp vào tập lệnh kiến ​​tạo kiến ​​trúc, do đó kết hợp các tính năng của cả hai. Để lấy một ví dụ, có mvn task, như được ghi lại có thể làm một maven đầy đủ được xây dựng từ kiến.

<artifact:mvn mavenHome="/path/to/maven-3.0.x"> 
    <arg value="install"/> 
    </artifact:mvn> 

Bên cạnh đó, có những

  • Dependencies nhiệm vụ
  • Cài đặt và nhiệm vụ triển khai
  • Pom nhiệm vụ

từng được mô tả với các ví dụ.

+1

Trong khi điều này về lý thuyết có thể trả lời câu hỏi, [nó sẽ là thích hợp hơn] (http://meta.stackexchange.com/q/8259) để bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo. – oers

+0

@Raghuram, Cảm ơn bạn đã liên kết. Nhưng bạn có thể xây dựng câu trả lời của mình với sự giúp đỡ của bất kỳ ví dụ nào không, vui lòng – Sachchidanand

+0

@Gaurav. Trên thực tế, liên kết có tất cả thông tin bạn cần. Tôi đã xây dựng câu trả lời anyway. Làm chỉnh sửa câu hỏi của bạn với thông tin cụ thể mà bạn cần và ai đó có thể trợ giúp. – Raghuram

1

MavenANT là các công cụ xây dựng rất khác nhau. Trong ANT bạn tự viết tất cả các logic, trong khi một quá trình xây dựng tiêu chuẩn được "nướng" với Maven. Tệp POM không chứa logic, thay vào đó nó chứa một loạt các khai báo về dự án của bạn.

Nếu bạn hiểu rõ cách Maven hoạt động, về mặt lý thuyết có thể lấy POM và tạo một bản xây dựng ANT mô phỏng hành vi của bản dựng Maven. Tôi không biết bất kỳ giải pháp nào có thể dễ dàng chuyển đổi theo hướng khác, chủ yếu là do ANT thiếu chức năng Maven, chẳng hạn như quản lý phụ thuộc.

Thay vì cố gắng chuyển đổi bản dựng ANT thành Maven, tôi khuyên bạn nên giữ logic dựng sẵn hiện có và ủy quyền quản lý đường dẫn lớp của bạn cho các tác vụ ANT ivy hoặc Maven. Các công cụ này cũng cung cấp các nhiệm vụ để xuất bản kết quả xây dựng của bạn tới kho lưu trữ Maven, cho phép dự án của bạn chia sẻ với các dự án khác bằng Maven.

Cuối cùng, tôi là một người ủng hộ ivy và đã viết một tập lệnh ant2ivy có thể hỗ trợ trong quá trình nâng cấp. Nó tạo ra một tập các tệp cấu hình ban đầu để tải xuống các phụ thuộc dự án của bạn từ kho lưu trữ trung tâm của Maven.

Các vấn đề liên quan