Thật vậy, việc tạo toàn bộ trang web tại mỗi công trình xây dựng rõ ràng không phải là một lựa chọn. Nhưng vấn đề là mvn surefire-report:report-only
không tạo ra các tệp css/*. Css, do đó kết quả xấu xí. Đây là đăng nhập SUREFIRE-616 (không có nghĩa là một cái gì đó sẽ xảy ra mặc dù). Cá nhân, tôi không sử dụng HTML báo cáo rằng nhiều để tôi có thể sống với điều đó nhưng đó không phải là một câu trả lời tốt vì vậy đây là một cách giải quyết dựa trên các nhiệm vụ kiến (* thở dài *):
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>test-reports</id>
<phase>test</phase>
<configuration>
<tasks>
<junitreport todir="target/surefire-reports">
<fileset dir="target/surefire-reports">
<include name="**/*.xml"/>
</fileset>
<report format="noframes" todir="target/surefire-reports"/>
</junitreport>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>ant</groupId>
<artifactId>ant-junit</artifactId>
<version>1.6.2</version>
</dependency>
</dependencies>
</plugin>
Cập nhật: Ý tưởng ban đầu của tôi là chạy plugin Maven AntRun "theo yêu cầu" để tạo báo cáo ... nhưng đó không phải là những gì tôi đã đăng, tôi đã gắn nó vào giai đoạn test
... Nhưng tôi không nghĩ về trường hợp kiểm tra không thành công (điều đó sẽ ngăn chặn việc xây dựng và ngăn chặn việc thực hiện các plugin AntRun). Vì vậy, một trong hai:
Đừng ràng buộc các plugin AntRun sang giai đoạn test
, di chuyển cấu hình bên ngoài execution
và gọi mvn antrun:run
trên dòng lệnh để tạo ra các báo cáo khi muốn.
hoặc sử dụng các tùy chọn testFailureIgnore
của mojo thử nghiệm và thiết lập nó là true trong cấu hình cắm chắc chắn hơn:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
hoặc thiết lập biểu thức này từ dòng lệnh bằng cách sử dụng tham số -D:
$ mvn test -Dmaven.test.failure.ignore=true
Tôi nghĩ rằng tùy chọn # 1 là lựa chọn tốt nhất, bạn không nhất thiết muốn tạo báo cáo (đặc biệt khi kiểm tra vượt qua) và tạo ra chúng một cách có hệ thống có thể làm chậm quá trình xây dựng về lâu dài. Tôi sẽ tạo ra chúng theo yêu cầu.
Nguồn
2010-05-17 08:10:55
Liệu nó mở một subprocess hoặc chỉ chạy ant nhúng? Nếu điều này chỉ nhúng kiến và nhiệm vụ của nó, đây là chính xác những gì tôi cần. –
@jimmy Nó chạy nhiệm vụ kiến trong cùng một quá trình. –
Cảm ơn đây chính xác là những gì tôi cần biết! –