Hello Members,
We have a Sonarqube instance (6.7.6-community) running on Kubernetes. When I try to upgrade it to Sonarqube 7.8-community I get an error related to the Android plugin as below.
Is the Android plugin no more supported in 7.x versions?
INFO web[o.s.s.p.ServerPluginRepository] Deploy plugin YAML Analyzer / 1.4.2
WARN web[o.s.c.p.PluginLoader] API compatibility mode is no longer supported. In case of error, plugin Android [android] should package its dependencies.
INFO web[o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.ws.WebServiceFilter@74114df3 [pattern=UrlPattern{inclusions=[/api/system/migrate_db., …], exclusions=[/api/properties, …]}]
INFO web[o.s.s.a.EmbeddedTomcat] HTTP connector enabled on port 9000
ERROR web[o.s.s.p.Platform] Background initialization failed. Stopping SonarQube
java.lang.IllegalStateException: Fail to load plugin Android [android]
Must-share information (formatted with Markdown):
- which versions are you using (SonarQube, Scanner, Plugin, and any relevant extension)
a. Sonarqube 6.7.6-community - what are you trying to achieve
a. trying to upgrade to Sonarqube 7.8-community - what have you tried so far to achieve this
a. I have tried to remove the Android plugin manually from 6.7.6 before upgrading to 7.8. With this, the upgrade happens and the DB too gets migrated in the /setup page, but the Sonarqube pod fails to run after the upgrade and gives below error.
2021.02.03 14:52:59 WARN web[o.s.c.p.PluginLoader] API compatibility mode is no longer supported. In case of error, plugin Android [android] should package its dependencies.
2021.02.03 14:53:00 INFO web[o.s.s.p.w.MasterServletFilter] Initializing servlet filter org.sonar.server.ws.WebServiceFilter@3cef1bed [pattern=UrlPattern{inclusions=[/api/system/migrate_db., …], exclusions=[/api/properties, …]}]
2021.02.03 14:53:00 INFO web[o.s.s.a.EmbeddedTomcat] HTTP connector enabled on port 9000
2021.02.03 14:53:01 ERROR web[o.s.s.p.Platform] Background initialization failed. Stopping SonarQube
java.lang.IllegalStateException: Fail to load plugin Android [android]
at org.sonar.server.plugins.ServerExtensionInstaller.installExtensions(ServerExtensionInstaller.java:82)
at org.sonar.server.platform.platformlevel.PlatformLevel4.start(PlatformLevel4.java:559)
at org.sonar.server.platform.Platform.start(Platform.java:211)
at org.sonar.server.platform.Platform.startLevel34Containers(Platform.java:185)
at org.sonar.server.platform.Platform.access$500(Platform.java:46)
at org.sonar.server.platform.Platform$1.lambda$doRun$0(Platform.java:119)
at org.sonar.server.platform.Platform$AutoStarterRunnable.runIfNotAborted(Platform.java:371)
at org.sonar.server.platform.Platform$1.doRun(Platform.java:119)
at org.sonar.server.platform.Platform$AutoStarterRunnable.run(Platform.java:355)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoClassDefFoundError: org/sonar/api/batch/Sensor
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at org.sonar.classloader.ClassRealm.loadClassFromSelf(ClassRealm.java:125)
at org.sonar.classloader.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:37)
at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:87)
at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:76)
at org.sonar.plugins.android.AndroidPlugin.getExtensions(AndroidPlugin.java:48)
at org.sonar.api.SonarPlugin.define(SonarPlugin.java:51)
at org.sonar.server.plugins.ServerExtensionInstaller.installExtensions(ServerExtensionInstaller.java:72)
… 9 common frames omitted
Caused by: java.lang.ClassNotFoundException: org.sonar.api.batch.Sensor
at org.sonar.classloader.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:41)
at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:87)
at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:76)
… 25 common frames omitted
2021.02.03 14:53:01 INFO web[o.s.p.ProcessEntryPoint] Hard stopping process
2021.02.03 14:53:01 INFO app[o.s.a.SchedulerImpl] Process[web] is stopped
2021.02.03 14:53:01 INFO app[o.s.a.SchedulerImpl] Process[es] is stopped
2021.02.03 14:53:01 WARN app[o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 143
2021.02.03 14:53:01 INFO app[o.s.a.SchedulerImpl] SonarQube is stopped