【问题标题】:Jenkins + Sonar詹金斯 + 声纳
【发布时间】:2014-07-16 19:04:40
【问题描述】:

我有一个 Pensky 项目,在我的 Jenkins 服务器上有两个构建作业。 First Build 作业执行 maven 构建并收集有关 Post Build Action 的 JaCoCo 代码覆盖率报告。

我的第二个构建作业对我的项目运行声纳分析。我想将 JaCoCo 代码覆盖率报告重用/输入到我的声纳中。但是,做不到。我在构建作业控制台中看到以下消息

"项目覆盖率设置为 0%,因为构建输出目录没有 存在:"

声纳作业正在 .sonar 目录(在 jenkins 作业目录中)中寻找“类”文件夹。

谁能指导我如何将报告输入 Sonar。谢谢

这是我的 sonar.properties

    sonar.projectKey=Pensky
    sonar.projectName=Pensky
    sonar.projectVersion=1.1
    sonar.projectDescription= GE Pensky
    sonar.sources=src/main/java
    sonar.tests=src/test/java
    sonar.language=java
    sonar.my.property=value
    sonar.forceAnalysis=true
sonar.jacoco.reportPath=target/jacoco.exec

【问题讨论】:

    标签: maven jenkins sonarqube


    【解决方案1】:

    您尚未将“sonar.binaries”属性设置为指向构建目录(如果使用 Maven 编译,则为“target/classes”)。

    【讨论】:

      【解决方案2】:

      首先,您应该复制第一个作业的文件夹目标以节省时间。如果你这样做了,你在工作的工作区中就有了所有的二进制文件和 jacoco.exec 文件。

      然后,您必须设置测试结果的文件夹。

      sonar.junit.reportsPath=target/surefire-reports(或其他) sonar.jacoco.ReportPath=target/jacoco.exec

      最后,您必须设置二进制文件夹。

      sonar.binaries=target/classes

      希望我对您有所帮助。

      【讨论】:

        猜你喜欢
        • 2013-05-10
        • 1970-01-01
        • 2016-08-24
        • 1970-01-01
        • 2018-06-30
        • 2019-10-27
        • 2014-11-01
        • 2015-03-19
        • 1970-01-01
        相关资源
        最近更新 更多