无法使用Gradle 4.5将jacoco报告上传到TeamCity

时间:2018-03-07 07:34:22

标签: gradle teamcity jacoco

我有一个Gradle任务可以将jacoco覆盖上传到TeamCity(在此处的TeamCity文档之后:Importing JaCoCo coverage data to TeamCity):

task uploadJacocoTestReport {
    doLast {
        println "##teamcity[jacocoReport dataPath='build/jacoco/jacocoTest.exec' " +
                "includes='com.mypackage.*' " +
                "classpath='build/classes/main']"
    }
}

如果我使用Gradle 3.5,则TeamCity构建能够在构建日志中显示CodeCoverage报告。但是,当我切换到Gradle 4.5时,代码覆盖率部分不再出现在构建日志中。如何使用Gradle 4.5上传jacoco报告?

TeamCity版本10.0.5 (build 42677)

jacoco version 0.8.0

2 个答案:

答案 0 :(得分:1)

我在团队合作方面也遇到了同样的问题,它向我显示了下一条消息:

[Generating JaCoCo coverage...] JaCoCo report generation failed. Exit code: 1

尝试使用:

println "##teamcity[jacocoReport dataPath='$project.buildDir/jacoco/jacocoTest.exec' ...]"

代替:

println "##teamcity[jacocoReport dataPath='build/jacoco/jacocoTest.exec' ...]"

答案 1 :(得分:0)

我不得不在基于Gradle v4和5的几个项目中将Jacoco报告导入TeamCity。

帮助我的一件事是查看Jacoco导入日志,您可以在构建的隐藏工件中找到它:

  • 转到构建页面>工件
  • 找到句子“还有隐藏的文物。显示”,然后单击“显示”
  • 在工件列表中,展开“ .teamcity / coverage_jacoco /”
  • 打开jacoco.log

jacoco logs

希望有帮助。