2013-08-16 29 views
5

trong Eclipse, khi Maven được bật, có tệp pom.xml để xây dựng với Maven. Ngoài ra, Eclipse còn có tùy chọn "tự động xây dựng" trong trình đơn dự án của nó."xây dựng tự động" và maven trong Eclipse

Tự động xây dựng "tự động xây dựng" với Maven, hoặc chúng ta cần bỏ chọn nó, vì khi Maven được kích hoạt, chúng ta không cần xây dựng Eclipse trong hệ thống xây dựng nữa?

Trả lời

8

Eclipse m2e sẽ chạy các mục tiêu plugin có liên kết vòng đời cho. Tôi không biết (và tôi không thể tìm thấy) những gì giai đoạn cụ thể được chạy, nhưng từ kinh nghiệm tôi biết rằng:

  • cho hoạt động bình thường, ít nhất biên dịch được thực hiện.
  • để thực hiện các kiểm tra (ví dụ: các trường hợp kiểm tra JUnit), ít nhất biên dịch thử được thực hiện.

Lưu ý rằng nó không có tất cả các ràng buộc có thể, và đi xung quanh that problem đôi khi là problematic. Vì vậy, thông thường, có cả hai nên chạy tốt, và trên thực tế sẽ tránh một số incongruities do nhà nước biên dịch không cập nhật trong khi bạn mã.

Tuy nhiên nếu bạn có plugin được bỏ qua bởi M2E, bạn nên thực sự đóng cửa "Xây dựng Tự động" tắt khi bạn cần phải chắc chắn xây dựng của bạn hoàn thành một cách chính xác.

Ví dụ: sử dụng Maven Properties plugin, nếu bạn chưa cung cấp ràng buộc và đặt m2e để bỏ qua, bạn sẽ có tài nguyên với giá trị thuộc tính ngoài giá trị. Vấn đề đặc biệt có thể xảy ra khi bạn làm một "Maven" xây dựng (từ menu ngữ cảnh nhấp chuột phải ví dụ), và sau đó làm một sự thay đổi trong mã của bạn và lưu nó.

2

Bạn cần cả hai. Đây là lý do:

Trình biên dịch dựng sẵn của Eclipse được sử dụng để biên dịch gia tăng - ví dụ: khi bạn lưu mã của mình. Nhưng việc xây dựng đầy đủ của dự án được thực hiện bằng cách sử dụng cấu hình maven và dự án trong tệp pom.xml.

+3

Điều đó không đúng - 'm2e' thực sự chạy các liên kết vòng đời mà nó có, nó không chỉ là biên dịch mã gia tăng. Một ví dụ tầm thường ở đây là lọc tài nguyên. –

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