c3p0:nested exception is java.lang.NoClassDefFoundError: com/mchange/v2/cfg/MConfig

报错的异常:


Exception encountered during context initialization - cancelling refresh attempt: 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/cfg/MConfig

在学习使用c3p0的时候遇到了这个异常,我百度了之后说是少了mchange-commons-java-0.2.3.4.jar这个包,我下载了这个包之后还是报这个异常,仔细看了网上的方法后发现他们报的异常都是这个:

nested exception is java.lang.NoClassDefFoundError: com/mchange/v2/ser/Indirector

 而我报的异常是:

nested exception is java.lang.NoClassDefFoundError: com/mchange/v2/cfg/MConfig

 一开始我确实是没看清,然后网上我也没找到遇到一样问题的人,于是我只能自己摸索,我顺着异常提示的这个路径com/mchange/v2/cfg/MConfig,发现mchange-commons-java-0.2.3.4.jar这个包下确实没有MConfig这个文件。后来我又去下载了别的版本的mchange-commons-java包,最后发现mchange-commons-java-0.2.11.jar 这个包对应的路径下有MConfig.class这个文件,果然就运行成功了。后来了解到其实c3p0包和mchange-commons包也有版本匹配的问题,要用上对应的版本才不会出错。了解到大家常用的:c3p0-0.9.2.1 jar包要和mchange-commons-java-0.2.3.4 jar 这个版本一起使用。而我用的c3p0-0.9.5.2.jar要用mchange-commons-java-0.2.11.jar这个版本的包。一个很小的问题确实搞了很久,希望能帮助到遇到和我一样问题的人。

附上:https://mvnrepository.com/可在这搜索下载想要用的包

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值