当前位置: 首页 > 知识库问答 >
问题:

升级SonarQube 5.1.1到5.2失败java.lang.NoClassDefFoundError: org/sonar/api/数据库/数据库会话

姬博瀚
2023-03-14

我试图升级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

有什么建议吗?

共有1个答案

袁何平
2023-03-14

罪魁祸首是声纳ldap插件1.4,在从扩展/插件中删除插件并在conf/sonar.properties评论所有ldap配置后,迁移最终成功。

 类似资料:
  • 问题内容: 我已经在Google Store中有一个应用程序。我正在使用具有3个表的内置数据库,并在应用程序首次启动时将其复制。现在,我想升级到该应用程序并添加另一个表。下面是我的代码。 我想问几个问题。上面的代码未升级。 现在,如果我是该应用程序的新用户,是否需要编辑旧数据库并制作另一个CKRecording表,并用放置在资产中的当前数据库替换该数据库,或者上述代码也适用于新用户? 问题答案:

  • 所有不遵循上节所述的关系模型的数据库统称为 NoSQL 数据库。 NoSQL 数据库一般使用集合代替表,使用文档代替记录。 NoSQL 数据库采用的设计方式使联结变得困难,所以大多数数据库根本不支持这种操作。 对于 之前的关系型数据库,若要列出各用户及其角色,就需要在程序中执行联结操作, 即先读取每个用户的 role_id,再在 roles 表中搜索对应的记录。 NoSQL 数据库更适合设计成如图

  • 我第一次尝试直接从4.5.4升级到5.6并得到以下错误,我要求我们的DBA增加DB日志级别,最终异常停止,但升级在FeedFileSources迁移期间冻结了。在本例中,冻结意味着几个小时(10+)没有更改DB或日志文件(尽管“Web[O.S.D.V.MassupDate]0文件已处理(0项/秒)”继续打印在日志中)。 从那以后,我让DBA减少了DB日志记录并恢复了上次备份,我又尝试了一次升级。这

  • 问题内容: 我一直在研究数据库的升级过程,特别是SQLite类型的数据库。 我被程序如何知道的困扰,“嘿。这个表不存在,让我们创建它吧!” 或“嘿,它确实存在,但后面有三个版本,让我们对其进行更新!” 我的意思是,我可以为每个表的每个版本编写特定的代码(基本上列出了其中的哪些列…),然后将其全部转储到每个表的大型if语句中,或类似的傻事,但这会疯了。-真的很疯狂。 (我会包含该代码,以便你们指出如

  • 升级、备份和恢复 数据库升级 数据库升级的推荐方案是,老版本的数据库的数据备份成 SQL 脚本的方式,在新版本的数据库上执行这些 SQL 来恢复数据。 使用 Script 工具备份数据 备份数据库有多种方式。如可以直接拷贝数据库文件,但是不建议在数据库在使用的时候去拷贝文件,另外数据库文件是二进制的,不能直接读懂,并且数据库文件可能会比较大,推荐的备份方式是创建压缩的 SQL 脚本文件,并且 H2

  • 将数据库从Oracle 11g升级到18c后,在尝试获取数据库表时,下面的一行将处于无限挂起状态。 司机:ojdbc8.jar18.3.0.0 服务器:Oracle18c