If you are getting below error while running sonar and calculating code coverage from gradle
then you are at the right place.
Solution
For solving this error, you can attempt any of the below solutions.
1. Check SonarQube Plugin Compatibility
Check if the version of sonarqube plugin is compatible with the gradle version.
For this, check the below plugins block in your build.gradle file
plugins { id "org.sonarqube" version "X.Y.Z" // Use the latest compatible version }
Or if you are using legacy approach to applying plugins, then check the dependencies section inside buildScript as below
buildScript { dependencies { classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:4.3.0.3225" } }
This solution worked for me when I faced the same issue.
2. Upgrade Gradle
Upgrade gradle version to a higher version or to latest version in your project.
For this, you can use gradle wrapper with below command
./gradlew wrapper --gradle-version=8.2.1
3. Verify Java Version
Check the java version to be compatible between gradle and sonarqube versions.
There might be a change that the java version is higher than the gradle and sonarqube versions.
4. Ensure reporting file
Ensure your test reports are being generated properly, as SonarQube relies on these reports.
test { useJUnitPlatform() // Ensure JUnit 5 compatibility reports { junitXml.enabled = true html.enabled = true } }
5. Clear build cache
Sometimes, cached files may cause issues.
Clear the build cache:
./gradlew clean build --no-build-cache
6. Inspect Stacktrace
Finally, if none of the above solutions work, then run your sonarqube
task with stacktrace
flag as shown below to get more information about the problem
./gradlew sonarqube --stacktrace --info
Hope the article was useful and solved the problem.