簡體   English   中英

Sonarqube 沒有選擇 Kotlin 和 Java Coverage gradle 項目

[英]Sonarqube not picking up both Kotlin and Java Coverage gradle project

不是混合源 Java 和 Kotlin 的 android 項目。 盡管許多人在覆蓋范圍、kotlin 和聲納方面存在問題。 我沒有找到這個案例。

Sonarqube 沒有同時獲取 Jacoco 生成的 Kotlin 和 Java Coverage:

  • 搖籃 4.8
  • 爪哇 1.8
  • 科特林 1.3.50

它獲得了 Java 類,但所有 Kotlin 類都被忽略了。 我已經在 gradle 文件中應用了所有必需的插件:

allprojects {
    apply plugin: 'jacoco'
    apply plugin: 'java'
    apply plugin: 'org.sonarqube'
    apply plugin: 'kotlin'

   ...
}

首先確保您的jacocoTestReport創建了一個 xml 報告:

jacocoTestReport {
    reports {
        xml {
            enabled true
        }
        xml.destination "build/reports/jacocoTestReport.xml"
    }
} 

然后,您需要使用 sonaqube 中所有項目的xmlReportPaths屬性將這些 xml 報告強制轉換為聲納。

您可以在此處看到多個路徑,以防您的項目中有多個子項目,這些子項目也包含混合源 Java/Kotlin。

sonarqube {
        properties {
            property "sonar.java.coveragePlugin", "jacoco"
            property("sonar.coverage.jacoco.xmlReportPaths", "../../build/reports/jacocoTestReport.xml,../build/reports/jacocoTestReport.xml")
        }
}

使用該聲納將考慮所有 xml 報告並生成整個覆蓋范圍。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM