spring配置c3p0数据源时出现org.springframework.beans.factory.BeanCreationException异常

在学习spring的时候出现了如下异常:

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 java.lang.NoClassDefFoundError: com/mchange/v2/ser/Indirector
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1076)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1021)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:760)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:482)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
at com.durex.spring.jdbc.JdbcTest.<init>(JdbcTest.java:16)

经检查发现我已经导入了c3p0-0.9.2.1.jar这个包,但是为什么还会出错?

在网上查了一下发现了问题的所在:

  原来在c3p0-0.9.2.2.jar这个版本的包的时候已经分离出来了一个辅助包mchange-commons-java-0.2.3.4.jar,

  而在c3p0-0.9.2.1.jar的时候还只是一个包,所以当使用的是c3p0-0.9.2.2.jar的时候必须还得导入mchange-commons-java-0.2.3.4.jar,

  如果使用的是c3p0-0.9.2.1.jar,这一个包就可以搞定。

猜你喜欢

转载自www.cnblogs.com/durex3/p/8934312.html