gradle - 构建失败时强制执行任务报告?

标签 gradle

Gradle 1.4 有新的测试报告聚合任务: http://www.gradle.org/docs/current/release-notes#stand-alone-test-report-task

task testReport(type: TestReport) {
    destinationDir = file("$buildDir/reports/all-tests")
    reportOn subprojects*.test
}

有没有办法让这个任务即使在构建失败时也能运行?目前如果我这样做:

taskReport.dependsOn test
build.dependsOn taskReport

仅当构建成功时才执行。

最佳答案

首先是好消息:即将推出的 Gradle 任务模型增强功能(目前计划在 Gradle 1.6 中使用)将解决此问题以及类似的用例。

与此同时,可能性是有限的。一种选择是使用 --continue 运行,尽管这也将继续执行其他任务。另一个可能的选择是注册 org.gradle.api.execution.TaskExecutionListener (通过 gradle.project.addListener())并在 Test 任务失败后调用 testReport.generateReport()。尽管强烈建议不要直接调用任务(并且通常不会产生预期的行为),但在这种特殊情况下,它可能会作为临时解决方法。

关于gradle - 构建失败时强制执行任务报告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14694903/

相关文章:

maven - Gradle compileGroovy java.lang.ExceptionInInitializerError

groovy - Gradle 2.4-编译后在运行任务中执行Groovy脚本文件

android - 抑制 Gradle 弃用警告

android - 无法解决 : com. android.support.design :25. 4.0

gradle - 依赖同一依赖项的多个配置

git - 在 Android Studio 导入期间维护目录结构

gradle - gradle测试任务的执行顺序

gradle - javaClass.getResource (“/foo”)在IntelliJ中为null,但在gradle CLI上有效

android - 发布新版本的android应用时未安装该应用

gradle - 如何将多个目录和筛选器模式添加到SourceSet?