如何在多模块android项目(kotlin + java)上配置SonarQube(与jacoco)?

问题描述 投票:0回答:1

我看到了具有不同规范的不同方法:只有Java,只有单个模块,带有sonarqube的jacoco exec文件或xml报告,sonarqube.gradle包含在所有模块中,或者仅包含在根目录中。...并且尝试了很多。最后,我一直在挣扎,某些要求没有用。

任何人都有适合我所有需求的方法吗?

java android kotlin sonarqube jacoco
1个回答
0
投票
我已经创建了一个满足我github repo中所有需求的测试项目>

关键事实是,您必须将声纳任务放在根gradle文件中,并将jacoco放在项目的任何模块中。

重要的

声纳特性

为:sonar.host.urlsonar.coverage.jacoco.xmlReportPaths对于

jacoco

任务,您必须为每个模块定义java-Classes "../app/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/de/logerbyte/jacocotest/javaClasses",kotlin-Classes "../app/build/tmp/kotlin-classes/debug/de/logerbyte/jacocotest"和常规src "../app/src/main/java"
使用这些信息,您必须在自己创建的jacoco任务中设置属性classDirectoriesexecutionDatasourceDirectoriers

最后运行buildtestDebugUnitTestjacocoTestReportsonarqube的gradle任务。

© www.soinside.com 2019 - 2024. All rights reserved.