c3p0异常,exception is java.lang.NoClassDefFoundError: com/mchange/v2/log/jdk14logging/ForwardingLogger

本文解决了一个关于c3p0数据源在Spring框架中初始化失败的问题,异常原因是缺少必要的日志处理类。通过添加mchange-commons-java依赖成功解决了此问题。
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.mchange.v2.c3p0.ComboPooledDataSource]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/mchange/v2/log/jdk14logging/ForwardingLogger
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1105)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1050)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:776)
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
    at test.TestSsh.<init>(TestSsh.java:16)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunner.java:217)
    at org.junit.runners.BlockJUnit4ClassRunner$1.runReflectiveCall(BlockJUnit4ClassRunner.java:266)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.BlockJUnit4ClassRunner.methodBlock(BlockJUnit4ClassRunner.java:263)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.mchange.v2.c3p0.ComboPooledDataSource]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: com/mchange/v2/log/jdk14logging/ForwardingLogger
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:154)
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1098)
    ... 35 more
Caused by: java.lang.NoClassDefFoundError: com/mchange/v2/log/jdk14logging/ForwardingLogger
    at com.mchange.v2.c3p0.impl.PoolBackedDataSourceBase.<init>(PoolBackedDataSourceBase.java:288)
    at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.<init>(AbstractPoolBackedDataSource.java:74)
    at com.mchange.v2.c3p0.AbstractComboPooledDataSource.<init>(AbstractComboPooledDataSource.java:142)
    at com.mchange.v2.c3p0.AbstractComboPooledDataSource.<init>(AbstractComboPooledDataSource.java:138)
    at com.mchange.v2.c3p0.ComboPooledDataSource.<init>(ComboPooledDataSource.java:47)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:142)
    ... 37 more
Caused by: java.lang.ClassNotFoundException: com.mchange.v2.log.jdk14logging.ForwardingLogger
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 47 more

看上面的cause by

exception is java.lang.NoClassDefFoundError: com/mchange/v2/log/jdk14logging/ForwardingLogger

不得不说c3p0 9.2版本后就分离了这个com/mchange/v2/log/jdk14logging/ForwardingLogger
需要额外添加 mchange-commons-java-XX.jar
问题是c3p0 9.5.2怎么mchange都会出现异常,还是换回车c3
p09.0 。……

打包成exe后报错Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: java/sql/SQLException at com.example.swing.workflow.WorkflowPersistence.listWorkflows(WorkflowPersistence.java:136) at com.example.swing.MainFrame.updateSavedWorkflowsMenu(MainFrame.java:224) at com.example.swing.MainFrame.createMenuBar(MainFrame.java:166) at com.example.swing.MainFrame.initializeComponents(MainFrame.java:64) at com.example.swing.MainFrame.<init>(MainFrame.java:49) at com.example.swing.MainApplication.lambda$main$0(MainApplication.java:21) at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) at java.base/java.security.AccessController.doPrivileged(AccessController.java:400) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) Caused by: java.lang.ClassNotFoundException: java.sql.SQLException at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:528) ... 19 more
最新发布
12-05
D:\develop\Java\jdk-17.0.12\bin\java.exe -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:62873,suspend=y,server=n -Drebel.base=C:\Users\shuang\.jrebel -Drebel.env.ide.plugin.build=162751f8787fe64cca7bd46af9d7965e7a8c0fff -Drebel.env.ide.plugin.version=2024.4.2 -Drebel.env.ide.version=2021.2.2 -Drebel.env.ide.product=IU -Drebel.env.ide=intellij -Drebel.notification.url=http://localhost:17434 -Xshare:off -agentpath:D:\develop\idea\jr-ide-intellij-2024.4.2\jr-ide-idea\lib\jrebel6\lib\jrebel64.dll -javaagent:D:\develop\idea\ideaIU-2021.2.2.win\plugins\java\lib\rt\debugger-agent.jar -Dfile.encoding=UTF-8 -classpath D:\develop\idea\ideaProjects\JL_TOLLSYSTEM_CODE\target\classes;D:\develop\Maven\repo\com\jfinal\jfinal-undertow\1.6\jfinal-undertow-1.6.jar;D:\develop\Maven\repo\io\undertow\undertow-core\2.0.19.Final\undertow-core-2.0.19.Final.jar;D:\develop\Maven\repo\org\jboss\logging\jboss-logging\3.3.2.Final\jboss-logging-3.3.2.Final.jar;D:\develop\Maven\repo\org\jboss\xnio\xnio-api\3.3.8.Final\xnio-api-3.3.8.Final.jar;D:\develop\Maven\repo\org\jboss\xnio\xnio-nio\3.3.8.Final\xnio-nio-3.3.8.Final.jar;D:\develop\Maven\repo\io\undertow\undertow-servlet\2.0.19.Final\undertow-servlet-2.0.19.Final.jar;D:\develop\Maven\repo\javax\servlet\javax.servlet-api\4.0.1\javax.servlet-api-4.0.1.jar;D:\develop\Maven\repo\com\jfinal\jfinal\4.2\jfinal-4.2.jar;D:\develop\Maven\repo\org\slf4j\slf4j-nop\1.7.25\slf4j-nop-1.7.25.jar;D:\develop\Maven\repo\org\slf4j\slf4j-api\1.7.25\slf4j-api-1.7.25.jar;D:\develop\Maven\repo\com\alibaba\druid\1.1.12\druid-1.1.12.jar;D:\develop\Maven\repo\com\alibaba\fastjson\1.2.54\fastjson-1.2.54.jar;D:\develop\Maven\repo\log4j\log4j\1.2.16\log4j-1.2.16.jar;D:\develop\Maven\repo\mysql\mysql-connector-java\5.1.44\mysql-connector-java-5.1.44.jar;D:\develop\Maven\repo\com\jfinal\cos\2017.5\cos-2017.5.jar;D:\develop\Maven\repo\net\sf\ehcache\ehcache-core\2.6.11\ehcache-core-2.6.11.jar;D:\develop\Maven\repo\org\apache\poi\poi-ooxml\3.17\poi-ooxml-3.17.jar;D:\develop\Maven\repo\org\apache\poi\poi\3.17\poi-3.17.jar;D:\develop\Maven\repo\org\apache\commons\commons-collections4\4.1\commons-collections4-4.1.jar;D:\develop\Maven\repo\org\apache\poi\poi-ooxml-schemas\3.17\poi-ooxml-schemas-3.17.jar;D:\develop\Maven\repo\org\apache\xmlbeans\xmlbeans\2.6.0\xmlbeans-2.6.0.jar;D:\develop\Maven\repo\stax\stax-api\1.0.1\stax-api-1.0.1.jar;D:\develop\Maven\repo\com\github\virtuald\curvesapi\1.04\curvesapi-1.04.jar;D:\develop\Maven\repo\org\bouncycastle\bcprov-jdk16\1.44\bcprov-jdk16-1.44.jar;D:\develop\Maven\repo\com\auth0\java-jwt\3.2.0\java-jwt-3.2.0.jar;D:\develop\Maven\repo\com\fasterxml\jackson\core\jackson-databind\2.8.4\jackson-databind-2.8.4.jar;D:\develop\Maven\repo\com\fasterxml\jackson\core\jackson-annotations\2.8.0\jackson-annotations-2.8.0.jar;D:\develop\Maven\repo\com\fasterxml\jackson\core\jackson-core\2.8.4\jackson-core-2.8.4.jar;D:\develop\Maven\repo\commons-codec\commons-codec\1.10\commons-codec-1.10.jar;D:\develop\Maven\repo\org\bouncycastle\bcprov-jdk15on\1.55\bcprov-jdk15on-1.55.jar;D:\develop\Maven\repo\com\oracle\ojdbc6\11.2.0.3\ojdbc6-11.2.0.3.jar;D:\develop\Maven\repo\org\quartz-scheduler\quartz\2.3.0\quartz-2.3.0.jar;D:\develop\Maven\repo\com\mchange\mchange-commons-java\0.2.11\mchange-commons-java-0.2.11.jar;D:\develop\Maven\repo\com\zaxxer\HikariCP-java6\2.3.13\HikariCP-java6-2.3.13.jar;D:\develop\Maven\repo\com\google\guava\guava\18.0\guava-18.0.jar;D:\develop\Maven\repo\top\hequehua\jfinal-swagger\0.1.5\jfinal-swagger-0.1.5.jar;D:\develop\Maven\repo\commons-io\commons-io\2.5\commons-io-2.5.jar;D:\develop\Maven\repo\cn\hutool\hutool-all\4.5.12\hutool-all-4.5.12.jar;D:\develop\idea\ideaIU-2021.2.2.win\lib\idea_rt.jar com.sxjlrj.common.config.MainConfig Connected to the target VM, address: '127.0.0.1:62873', transport: 'socket' 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: A newer version '2025.3.1' is available for download 2025-08-28 16:03:20 JRebel: from https://jrebel.com/software/jrebel/download/ 2025-08-28 16:03:20 JRebel: Starting JFinal 4.2 -> http://0.0.0.0:80 Info: jfinal-undertow 1.6, undertow 2.0.19.Final, jvm 17.0.12 2025-08-28 16:03:20 JRebel: Starting logging to file: C:\Users\shuang\.jrebel\jrebel.log 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: ############################################################# 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: JRebel Agent 2024.4.2 (202412021025) 2025-08-28 16:03:20 JRebel: (c) Copyright 2007-2024 Perforce Software, Inc. 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: Over the last 30 days JRebel prevented 2025-08-28 16:03:20 JRebel: at least 277 redeploys/restarts saving you about 0.1 hours. 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: Over the last 131 days JRebel prevented 2025-08-28 16:03:20 JRebel: at least 496 redeploys/restarts saving you about 0.1 hours. 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: License acquired from License Server: http://127.0.0.1:8888 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: Licensed to shuang. 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: You are using an offline license. 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:20 JRebel: ############################################################# 2025-08-28 16:03:20 JRebel: 2025-08-28 16:03:21 JRebel: Monitoring Log4j configuration in 'file:/D:/develop/idea/ideaProjects/JL_TOLLSYSTEM_CODE/target/classes/log4j.properties'. Add Route: /api Add Route: /manager/core/dictionary Add Route: /manager/core/dictionary/value Add Route: /manager/core/sysFunc Add Route: /manager/core/sysJob Add Route: /manager/core/sysJobLog Add Route: /manager/core/sysLog Add Route: /manager/core/sysOrg Add Route: /manager/core/sysParam Add Route: /manager/core/sysRole Add Route: /manager/core/sysServer Add Route: /manager/core/sysUser Add Route: /manager/echart Add Route: / Add Route: /manager/login Add Route: /manager/verify Add Route: /manager Add Route: /manager/toll_api_logs/tollApiLogs Add Route: /manager/toll_login_record/tollLoginRecord Add Route: /manager/toll_order/tollOrder Add Route: /manager/toll_staff/tollStaff Add Route: /manager/toll_staff_shift/tollStaffShift Add Route: /manager/toll_station_lane/tollStationLane Add Route: /manager/toll_vehicle_pass/tollVehiclePass 2025-08-28 16:03:22 [Thread: main]-[INFO]-[com.alibaba.druid.pool.DruidDataSource.init()]: {dataSource-1} inited 2025-08-28 16:03:22 [Thread: main]-[INFO]-[com.sxjlrj.common.util.job.ScheduleUtils.<init>()]: 初始化调度器=> [成功] java.lang.NullPointerException: Cannot invoke "com.jfinal.plugin.activerecord.Config.close(java.sql.Connection)" because "config" is null at com.jfinal.plugin.activerecord.Model.find(Model.java:692) at com.jfinal.plugin.activerecord.Model.find(Model.java:703) at com.jfinal.plugin.activerecord.Model.find(Model.java:710) at com.sxjlrj.manager.core.service.SysJobService.getJobs(SysJobService.java:40) at com.sxjlrj.common.util.job.ScheduleUtils.initJob(ScheduleUtils.java:43) at com.sxjlrj.common.config.MainConfig.onStart(MainConfig.java:180) at com.jfinal.core.JFinalFilter.init(JFinalFilter.java:71) at io.undertow.servlet.core.LifecyleInterceptorInvocation.proceed(LifecyleInterceptorInvocation.java:111) at io.undertow.servlet.core.ManagedFilter.createFilter(ManagedFilter.java:80) at io.undertow.servlet.core.DeploymentManagerImpl$2.call(DeploymentManagerImpl.java:589) at io.undertow.servlet.core.DeploymentManagerImpl$2.call(DeploymentManagerImpl.java:554) at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:42) at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) at io.undertow.servlet.core.DeploymentManagerImpl.start(DeploymentManagerImpl.java:596) at com.jfinal.server.undertow.UndertowServer.configHttp(UndertowServer.java:284) at com.jfinal.server.undertow.UndertowServer.doStart(UndertowServer.java:262) at com.jfinal.server.undertow.UndertowServer.start(UndertowServer.java:159) at com.sxjlrj.common.config.MainConfig.main(MainConfig.java:43) Disconnected from the target VM, address: '127.0.0.1:62873', transport: 'socket' Process finished with exit code 1
08-29
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值