之前的代码可以运行,连接C3P0之后报错

之前的代码可以运行,连接C3P0之后报错

java.lang.NoClassDefFoundError: Could not initialize class com.imooc.mybatis.utils.MyBatisUtils

    at com.imooc.mybatis.MyBatisTestor.testSelectPage(MyBatisTestor.java:290)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
    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.junit.runner.JUnitCore.run(JUnitCore.java:137)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)


引入代码

<dependency>
   <groupId>com.mchange</groupId>
   <artifactId>c3p0</artifactId>
   <version>0.9.5.1</version>
</dependency>
<dependency>
   <groupId>com.mchange</groupId>
   <artifactId>mchange-commons-java</artifactId>
   <version>0.2.15</version>
</dependency>

网上的很多方法都试了没用


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
好帮手慕柯南 2019-09-20 16:22:29

同学你好!

1.根据报错信息是说同学的mybatis-config.xml 文件找不到,同学检查一下项目中是否有这个文件

http://img1.sycdn.imooc.com//climg/5d848be00978173206300131.jpg

2.如果有,放在了什么目录下面呢?又是怎么加载的呢?同学可以截图以及贴代码说明一下,可以帮助老师更快的给同学定位问题所在。

祝学习愉快~

  • 提问者 慕哥3346605 #1
    我一开始没有删除target文件,只是删除了里面的文件,所以报了这个错,然后把traget文件删除之后,重新生成了target文件以及那些配置文件,然后运行报错就是之前那个java.lang.NoClassDefFoundError: Could not initialize class com.imooc.mybatis.utils.MyBatisUtils
    2019-09-20 16:25:02
  • 好帮手慕柯南 回复 提问者 慕哥3346605 #2
    同学贴一下自己的配置文件,以及项目结构老师看一下呢。祝学习愉快~
    2019-09-20 16:30:05
好帮手慕柯南 2019-09-20 10:03:03

同学清除一下将编译生成的target、out删除,然后可以使用IDEA的 File -> Invalidate Cashes / Restart... 清除缓存再试一下

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~


  • 提问者 慕哥3346605 #1
    java.io.IOException: Could not find resource mybatis-config.xml at org.apache.ibatis.io.Resources.getResourceAsStream(Resources.java:114) at org.apache.ibatis.io.Resources.getResourceAsStream(Resources.java:100) at org.apache.ibatis.io.Resources.getResourceAsReader(Resources.java:160) at com.imooc.mybatis.MyBatisTestor.testSqlSessionFactory(MyBatisTestor.java:29)
    2019-09-20 16:03:11
  • 提问者 慕哥3346605 #2
    没有用呢老师,不知道是不是电脑问题
    2019-09-20 16:08:33
好帮手慕柯南 2019-09-19 17:37:25

同学使用老师的版本试一下:

http://img1.sycdn.imooc.com//climg/5d834c4a0979d15204790170.jpg

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 慕哥3346605 #1
    没用呢,每个版本都试过了,就是报这个错
    2019-09-20 08:29:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师