SonarQube 和 Jacoco 无法识别 kotlin-classes 目录

Che*_*ani 5 java android jacoco kotlin sonarqube

我正在使用 Jacoco v0.8.4和 Sonarcube v2.7.1

\n\n
\n

我正在为 SonarCube 使用以下配置。

\n
\n\n
property "sonar.sources", "src/main/java"\nproperty "sonar.binaries","build/intermediates/javac,app/build/tmp/kotlin-classes"\nproperty "sonar.java.binaries", "build/intermediates/javac,app/build/tmp/kotlin-classes"\nproperty "sonar.tests", "src/test/java" // where the tests are located\nproperty "sonar.java.test.binaries", "build/intermediates/javac,app/build/tmp/kotlin-classes"\nproperty "sonar.jacoco.reportPath", "build/jacoco/testDevDebugUnitTest.exec"\nproperty "sonar.java.coveragePlugin", "jacoco"\nproperty "sonar.android.lint.report", "build/reports/lint results.xml"\xe2\x80\xa8     \n
Run Code Online (Sandbox Code Playgroud)\n\n

\xe2\x80\xa8

\n\n

SonarCube 分析失败,原因为无效值sonar.java.binaries值无效

\n\n

> No files nor directories matching \'app/build/tmp/kotlin-classes\'

\n\n

\xe2\x80\xa8但是\'app/build/tmp/kotlin-classes\'存在于我的项目文件夹中。

\n\n

但是,如果我删除kotlin从属性中删除一些内容,那么它会成功提供 Java 文件的覆盖范围。

\n\n

我对 Kotlin 的报道做错了什么吗?

\n

Arc*_*eja 3

您还需要在下面的路径中添加构建变体文件夹

property "sonar.java.test.binaries", "build/intermediates/classes/test/, app/build/tmp/kotlin-classes/<BuildVariant>UnitTest"
property "sonar.java.binaries", "build/intermediates/classes/<BuildVariant>/, app/build/tmp/kotlin-classes/<BuildVariant>/"
property "sonar.binaries", "build/intermediates/classes/<BuildVariant>/, app/build/tmp/kotlin-classes/<BuildVariant>/"
Run Code Online (Sandbox Code Playgroud)

还有一件事是尽量避免使用带有空格的文件名,例如lint results.xml