2012-08-29 33 views
5

Khi chúng tôi chạy cài đặt sạch mvn từ tập lệnh batch (* .cmd),% ERRORLEVEL% luôn là 0 bất kể khi build hoàn thành thành công hay thất bại. Làm thế nào bạn có thể nhận được Maven để trả về một mã không cho thất bại?Maven (MVN) trả về giá trị thất bại?

mvn clean install 
echo error:%ERRORLEVEL% 

Chúng tôi đang sử dụng Maven 2.


Cập nhật:

Lưu ý rằng nếu chúng ta làm "blah mvn", sau đó ERRORLEVEL = 1 sau sự thất bại do mục tiêu xấu.

Nhưng nếu chúng tôi "cài đặt sạch mvn" trong trường hợp bản dựng không thành công do lỗi phức tạp, chúng tôi vẫn nhận được ERRORLEVEL = 0.


Cập nhật 2:

Ok, điều này là bởi vì chúng tôi đang chạy Maven như:

mvn clean install | tee% LOGFILE%

Tôi đoán đó là tee đang đặt ERRORLEVEL.

+1

mvn là một tập tin batch có bạn đã cố gắng sử dụng cuộc gọi mvn sạch cài đặt và đầu ra ERRORLEVEL? – khmarbaise

+1

Phiên bản Maven 2 chính xác mà bạn đang sử dụng là gì? Có lỗi trong maven 2 rằng nó không trả về mã lỗi chính xác: http://jira.codehaus.org/browse/MNG-3651. Lỗi đã được sửa trong maven 2.1. Nếu bạn đang sử dụng phiên bản cũ hơn, bạn có thể chỉ cần áp dụng sửa lỗi theo cách thủ công vào tệp bat cục bộ của bạn. – DB5

+0

Chúng tôi đang sử dụng Apache Maven 2.2.1 (r801777; 2009-08-06 15: 16: 01-0400) –

Trả lời

3

Ok, điều này là do chúng tôi đang chạy Maven như:

mvn clean install | tee% LOGFILE%

Tôi đoán đó là tee đang đặt ERRORLEVEL.

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