Sonar-runner gradle plugin tries to run reports on multi-level multi-projects, but sonar-runner only analyzes leaf projects


(Rajesh Advani) #1

I have a problem with sonar-runner that I’ve posted at http://stackoverflow.com/questions/17067905/using-sonarrunner-on-a-multi-project-java-codebase-using-gradle-skips-classes-o and I’ve been told that the underlying sonar-runner only analyzes leaf projects.

Gradle supports the following structure:

Root/Parent/src Root/Parent/Child/src Root/Parent/Child/GrandChild/src

However, sonar-runner ignores the sources for Parent and Parent/Child.

These are the properties the gradle plugin sets up:

Root.sonar.modules = Parent Root.Parent.sonar.modules = Child Root.Parent.Child.sonar.modules = GrandChild

If the gradle sonar-runner plugin setup the sonar-runner configuration as something like:

Root.sonar.modules = Parent, Parent.Child, Parent.Child.GrandChild

Then all the projects would be at the leaf level, and the analysis would run on all source files.