我有一个多项目gradle构建,我试图使用sonarqube进行分析。它成功分析了项目中的所有嵌套模块,但不分析基础或父项目。
我在日志中看到了这个警告:
12:07:23.332警告 - /!\多模块项目不能有源文件夹,因此'C:\ workspaces \ platform \ myProject \ src \ main \ java'不会用于分析。如果要分析此文件夹的文件,则应创建另一个子模块并将其移入其中。
有没有办法将父src,test和binary作为要扫描的文件夹而不用创建子模块中的子模块?
我的SonarQube属性如下所示:
sonarqube{
properties {
property "sonar.host.url", "http://ww:80"
property "sonar.jdbc.url", "jdbc:jtds:sqlserver://db:5555;databaseName=sonarqube"
property "sonar.jdbc.driverClassName", "net.sourceforge.jtds.jdbc.Driver"
property "sonar.jdbc.username", "u"
property "sonar.jdbc.password", "p"
property "sonar.scm.disabled", "true"
property "sonar.junit.reportsPath", "${buildDir}/test-results"
property "sonar.jacoco.reportPath", "${buildDir}/jacoco/test.exec"
property "sonar.modules" , "" }
}
答案 0 :(得分:1)
这是SonarQube的一个众所周知的限制。您可以关注/投票:https://jira.sonarsource.com/browse/SONARGRADL-5
答案 1 :(得分:0)
我遇到了同样的问题并为当前的Sonarqube Scanner for Gradle和Gradle 3解决了这个问题。
见https://plugins.gradle.org/plugin/argelbargel.gradle.plugins.sonarqube-multiproject-plugin。它基本上检测带有子项目和源代码的项目,并修改sonarqube-Task的内部属性。
该插件基于solution中提到的old gradle forum。