我看到了具有不同规范的不同方法:只有Java,只有单个模块,带有sonarqube的jacoco exec文件或xml报告,sonarqube.gradle包含在所有模块中,或者仅包含在根目录中。...并且尝试了很多。最后,我一直在挣扎,某些要求没有用。
任何人都有适合我所有需求的方法吗?
关键事实是,您必须将声纳任务放在根gradle文件中,并将jacoco放在项目的任何模块中。
重要的
声纳特性
为:sonar.host.url
和sonar.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任务中设置属性classDirectories
,executionData
和sourceDirectoriers
。最后运行build
,testDebugUnitTest
,jacocoTestReport
和sonarqube
的gradle任务。