当前位置: 首页 > 知识库问答 >
问题:

如何在Gradle中聚合多模块项目的声纳报告?

微生翼
2023-03-14
apply plugin: 'org.sonarqube'

sonarqube {
    properties {
        property 'sonar.host.url', sonarHostUrl
        property 'sonar.jacoco.reportPaths', "$buildDir/reports/jacoco"
    }
}

apply plugin: 'jacoco'

jacoco {
    toolVersion = "0.7.9"
}

jacocoTestReport {
    group = "Reporting"
    reports {
        xml.enabled true
        xml.destination "${buildDir}/reports/jacoco/report.xml"
        csv.enabled false
        html.enabled true
    }
}

test {
    jacoco {
        append = true
    }
}
./gradlew clean build jacocoTestReport --info

./gradlew sonarqube -Dsonar.branch=nonMasterBranch --info

共有1个答案

戴正阳
2023-03-14

根据这个答案,您应该尝试Jacoco覆盖梯度插件

只需在根项目中添加以下内容:

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.palantir:jacoco-coverage:0.4.0'      
    }
}

apply plugin: 'com.palantir.jacoco-full-report'

根据文件:

 类似资料:
  • 我有一个基于java和kotlin的多模块gradle项目。我正在尝试设置声纳分析。我在根项目中配置了sonar,并用CircleCI进行了分析。sonarcloud中的结果仅适用于其中一个子项目。 我的项目结构如下: 项目A/构建。格拉德尔 项目B/构建。格拉德尔 ProjectC/build。格拉德尔 建造。格拉德尔 这是我的根构建。格雷德尔。

  • 我的目标是生成一个包含来自这两个模块的信息的聚合checkstyle报告。当我运行“Gradle CheckStyleMain”时,聚合的html报告只包含来自module2的checkstyle报告信息,而忽略module1信息。

  • parent-child1-pom.xml-child2-pom.xml-child3-pom.xml-pom.xml 我在父pom.xml中包含了JaCoCo插件。当我从父级pom.xml运行mvn clean install sonar:sonar build时,我看到每个子级都生成自己的jacoco.exec文件。类似于child1/target/jacoco.exec,child2/tar

  • 我如何在一个Android Gradle项目中设置模块的依赖关系,在这个项目中,模块之间相互依赖,这样我就可以一次部署所有模块的新快照或发布版本的构建? 该项目的结构如下: 项目配置文件如下,仅显示相关部分(根据我的判断): 设置。分级: lib-help/gradle.properties: lib-help/build.gradle: 当我运行时,所有内容都编译得很好,并且上载文件被推送到正确

  • 问题内容: 我最近开始使用Gradle并替换了我现有的基于Maven的项目。过去我在使用Maven处理多模块构建时遇到很多问题。在处理多模块水龙头时,Gradle呼吸了新鲜空气,但还不是很完美。 我的项目有以下文件夹布局: 我遇到的问题是“ EnterpriseApp1”和“ ClientApplication”都依赖于CommonLib项目。我不知道如何配置“ EnterpriseApp1”构建

  • 我正在进行一个具有以下maven体系结构的项目: 父级(pom) 模块A(pom) 子模块A1(jar) 子模块A2(jar) null 我的选择是: 添加具有版本的依赖项