繁体   English   中英

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

[英]How to configure SonarQube (with jacoco) on multi module android project (kotlin + java)?

我见过不同规格的不同方法:只有 java,只有单个模块,带有 jacoco exec 文件或 sonarqube 的 xml 报告,sonarqube.gradle 包含在所有模块中或仅在 root 中......并尝试了很多。 最后我总是挣扎,我的一些要求不起作用。

有没有人有适合我所有需求的方法?

我创建了一个测试项目,它满足了我在github 存储库中的所有需求

关键事实是,您必须将声纳任务放在根 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 任务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM