We are using Gradle 1.3. We upgraded our Sonar installation from 3.3 to 3.4 and now the Sonar plugin fails with a ClassNotFoundException when the Sonar Batch is trying to “Install plugins”:
Caused by: org.sonar.api.utils.SonarException: Fail to load plugin findbugs
at org.sonar.core.plugins.PluginClassloaders.instantiatePlugin(PluginClassloaders.java:229)
at org.sonar.core.plugins.PluginClassloaders.init(PluginClassloaders.java:97)
at org.sonar.batch.bootstrap.BatchPluginRepository.doStart(BatchPluginRepository.java:82)
at org.sonar.batch.bootstrap.BatchPluginRepository.start(BatchPluginRepository.java:63)
at org.picocontainer.lifecycle.ReflectionLifecycleStrategy.invokeMethod(ReflectionLifecycleStrategy.java:110)
… 82 more Caused by: java.lang.NoClassDefFoundError: org/sonar/api/SonarPlugin
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
at org.sonar.core.plugins.PluginClassloaders.instantiatePlugin(PluginClassloaders.java:222)
… 86 more Caused by: java.lang.ClassNotFoundException: org.sonar.api.SonarPlugin
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
… 91 more
The same problem is reproducible on my local maschine with a clean Sonar 3.4 installation and the Gradle sample project located in the distribution under samples/sonar/quickstart. But running Sonar on that sample project by using the Sonar Ant tasks did work.
I am not sure if this a problem of the new Sonar version or an incompatibility between the Gradle Sonar plugin and the new Sonar version…
Please help…