如何从Gradle中的'check'任务获取输出?

时间:2014-03-20 11:05:11

标签: groovy gradle report pmd

我正在使用java 插件,我添加 checkstyle pmd findbugs 检查。所以当它们完成后我想得到它们的输出文件报告。我试过了

project.tasks.getByName("check").getOutputs().each {
    println "------------>"+ it
}

但没有任何反应。

如何获取生成的报告?

1 个答案:

答案 0 :(得分:2)

Checkstyle,pmd和findbugs只是将依赖项添加到java插件检查任务中,以便调用报告任务。我不认为你可以从java的检查任务中获得有关报告的任何信息。

对于checkstyle插件,checkstyleMain任务被添加为java的检查任务的依赖项。如果checkstyleMain任务失败,则会打印出一条失败消息,告知您报告的位置:

 Checkstyle rule violations were found. See the report at: file:///Users/foo/bar/sandbox/gradle/build/reports/checkstyle/main.xml

您可以执行此操作来打印报告的内容。

project.gradle.buildFinished { buildResult ->
    if (buildResult.getFailure() != null) {
        println "Reports: " + checkstyleMain.reports.getXml().getDestination().text
    }
}

我不确定这是你所追求的,并添加了一条评论要求澄清。