2012-12-24 37 views
5

Tôi có một ứng dụng web được đóng gói dưới dạng tệp war (bao gồm một số tệp jar). Tôi nhận thấy rằng khi tôi chạy mvn install - các dự án duy nhất được biên dịch là những người đã thay đổi - sau đó nó thay thế các jar s này trong tệp war.Khi nào sử dụng mvn clean install thay vì cài đặt mvn?

Nếu trường hợp đó xảy ra - khi nào tôi nên sử dụng cài đặt sạch mvn thay vì chỉ sử dụng cài đặt mvn?

Tôi đoán rằng nếu tôi thay đổi bất kỳ tài nguyên nào, tôi sẽ phải sử dụng cài đặt sạch mvn - Tôi có đúng không?

Và nếu tôi đúng, thì bất cứ khi nào tôi chỉ thay đổi các lớp học, là mvn cài đặt đủ tốt chưa?

Trả lời

6

Chủ yếu, lý do duy nhất để làm sạch là nếu bạn làm điều gì đó có thể xóa hoặc đổi tên lớp hoặc tài nguyên trong thư mục đầu ra, chẳng hạn như đổi tên tệp .java hoặc thay đổi thứ gì đó tạo lớp học để tạo ra chúng với các tên khác nhau. Trong những trường hợp đó, tệp cũ hoặc tệp tài nguyên sẽ vẫn tồn tại trong thư mục đầu ra và có thể gây ra hành vi lạ.

Ngoài ra, chỉ cần sử dụng cài đặt và bạn sẽ ổn. Sau đó, Maven sẽ chỉ xây dựng những gì cần phải được xây dựng để mang lại các thư mục đầu ra được cập nhật.

+0

Hiện mvn cài đặt xây dựng lại toàn bộ mô-đun jar hoặc chỉ biên dịch lại và thay thế chỉ thay đổi lớp java bên trong jar –

+0

Maven có [vòng đời tiêu chuẩn] (http://maven.apache.org/guides/introduction/introduction-to-the -lifecycle.html) theo sau để xây dựng. Một phần của vòng đời đó đang biên dịch bất kỳ tệp nguồn nào chưa được biên dịch hoặc đã thay đổi kể từ lần biên dịch cuối cùng. Sau đó, một gói được xây dựng từ các nguồn được xây dựng. Tệp JAR cũ sẽ không được sử dụng lại, nhưng việc đóng gói tốn ít thời gian. –

0

Sử dụng sạch khi bạn muốn xây dựng dự án của mình từ đầu. Nếu quá trình xây dựng của bạn không mất nhiều thời gian, hãy sử dụng nó mỗi lần bạn chạy. Nếu không nó là vào bạn.

Chắc chắn làm điều đó nếu bạn không chắc chắn rằng mọi thứ đều thực sự được cập nhật.

+0

Quá trình xây dựng của tôi mất rất nhiều thời gian - đây là lý do tôi chỉ muốn cài đặt mvn. – Noam

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