我尝试将SonarQube 5.1.1升级到5.2并升级失败并出现以下错误:
2015.11.20 22:24:31 INFO web[DbMigration] 2015.11.20 22:24:33 INFO web[o.s.s.p.UpdateCenterClient] Update center: http://update.sonarsource.org/update-center.properties (no proxy) 2015.11.20 22:24:33 INFO web[o.s.s.d.m.PlatformDatabaseMigration] DB migration failed | time=2564566ms 2015.11.20 22:24:33 ERROR web[o.s.s.d.m.PlatformDatabaseMigration] DB Migration or container restart failed. Process ended with an exception java.lang.NoClassDefFoundError: org/sonar/api/database/DatabaseSession at java.lang.Class.getDeclaredConstructors0(Native Method) ~[na:1.8.0_66] at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) ~[na:1.8.0_66] at java.lang.Class.getDeclaredConstructors(Class.java:2020) ~[na:1.8.0_66] at org.picocontainer.injectors.ConstructorInjector$3.run(ConstructorInjector.java:403) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector$3.run(ConstructorInjector.java:401) ~[picocontainer-2.15.jar:na] at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_66] at org.picocontainer.injectors.ConstructorInjector.getConstructors(ConstructorInjector.java:401) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector.getSortedMatchingConstructors(ConstructorInjector.java:377) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector.getGreediestSatisfiableConstructor(ConstructorInjector.java:128) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector.getGreediestSatisfiableConstructor(ConstructorInjector.java:110) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector.access$100(ConstructorInjector.java:51) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:331) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56) ~[picocontainer-2.15.jar:na] at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64) ~[picocontainer-2.15.jar:na] at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91) ~[picocontainer-2.15.jar:na] at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:699) ~[picocontainer-2.15.jar:na] at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:647) ~[picocontainer-2.15.jar:na] at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:621) ~[picocontainer-2.15.jar:na] at org.picocontainer.parameters.CollectionComponentParameter.getArrayInstance(CollectionComponentParameter.java:334) ~[picocontainer-2.15.jar:na] at org.picocontainer.parameters.CollectionComponentParameter.access$100(CollectionComponentParameter.java:49) ~[picocontainer-2.15.jar:na] at org.picocontainer.parameters.CollectionComponentParameter$1.resolveInstance(CollectionComponentParameter.java:139) ~[picocontainer-2.15.jar:na] at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:141) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364) ~[picocontainer-2.15.jar:na] at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56) ~[picocontainer-2.15.jar:na] at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64) ~[picocontainer-2.15.jar:na] at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91) ~[picocontainer-2.15.jar:na] at org.picocontainer.DefaultPicoContainer.instantiateComponentAsIsStartable(DefaultPicoContainer.java:1034) ~[picocontainer-2.15.jar:na] at org.picocontainer.DefaultPicoContainer.addAdapterIfStartable(DefaultPicoContainer.java:1026) ~[picocontainer-2.15.jar:na] at org.picocontainer.DefaultPicoContainer.startAdapters(DefaultPicoContainer.java:1003) ~[picocontainer-2.15.jar:na] at org.picocontainer.DefaultPicoContainer.start(DefaultPicoContainer.java:767) ~[picocontainer-2.15.jar:na] at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:99) ~[sonar-core-5.2.jar:na] at org.sonar.server.platform.platformlevel.PlatformLevel.start(PlatformLevel.java:84) ~[sonar-server-5.2.jar:na] at org.sonar.server.platform.platformlevel.PlatformLevel4.start(PlatformLevel4.java:729) ~[sonar-server-5.2.jar:na] at org.sonar.server.platform.Platform.start(Platform.java:214) ~[sonar-server-5.2.jar:na] at org.sonar.server.platform.Platform.startLevel34Containers(Platform.java:188) ~[sonar-server-5.2.jar:na] at org.sonar.server.platform.Platform.doStart(Platform.java:113) ~[sonar-server-5.2.jar:na] at org.sonar.server.platform.Platform.doStart(Platform.java:99) ~[sonar-server-5.2.jar:na] at org.sonar.server.db.migrations.PlatformDatabaseMigration.doRestartContainer(PlatformDatabaseMigration.java:137) [sonar-server-5.2.jar:na] at org.sonar.server.db.migrations.PlatformDatabaseMigration.doDatabaseMigration(PlatformDatabaseMigration.java:113) [sonar-server-5.2.jar:na] at org.sonar.server.db.migrations.PlatformDatabaseMigration.access$000(PlatformDatabaseMigration.java:37) [sonar-server-5.2.jar:na] at org.sonar.server.db.migrations.PlatformDatabaseMigration$1.run(PlatformDatabaseMigration.java:100) [sonar-server-5.2.jar:na] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_66] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_66] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_66] Caused by: java.lang.ClassNotFoundException: org.sonar.api.database.DatabaseSession at org.sonar.classloader.ParentFirstStrategy.loadClass(ParentFirstStrategy.java:39) ~[sonar-classloader-1.0.jar:na] at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:87) ~[sonar-classloader-1.0.jar:na] at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:76) ~[sonar-classloader-1.0.jar:na] ... 50 common frames omitted
环境:
Linux 3.10.0-229.11.1.el7.x86_64 #1 SMP Thu Aug 6 01:06:18 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux Java: java version "1.8.0_66" Java(TM) SE Runtime Environment (build 1.8.0_66-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode) Database: psql (PostgreSQL) 9.4.4
有什么建议吗?
答案 0 :(得分:1)
罪魁祸首是声纳ldap插件1.4,在从扩展/插件中删除插件并注释conf / sonar.properties中的所有ldap配置后,迁移终于成功了。