mybatis-ssm项目:明明已经导入jar包,但运行时却报ClassNotFoundException异常。

问题描述

ssm项目:明明已经导入jar包,但运行时却报ClassNotFoundException异常。

异常信息如下:
org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [org.mybatis.spring.SqlSessionFactoryBean.class] for bean with name 'sessionFactory' defined in class path resource [spring/applicationContext-dao.xml]; nested exception is java.lang.ClassNotFoundException: org.mybatis.spring.SqlSessionFactoryBean.class
at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1275)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:575)
at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1344)
at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:910)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:609)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:83)
at com.yong.mapper.UserMapperTest.setUp(UserMapperTest.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: java.lang.ClassNotFoundException: org.mybatis.spring.SqlSessionFactoryBean.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at org.springframework.util.ClassUtils.forName(ClassUtils.java:260)
at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:416)
at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1296)
at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1267)
... 32 more

提示找不到的类是SqlSessionFactoryBean.class,但是下图可以看到已经导入的jar包下有这个类

解决方案

如果不是版本问题,就是jar包并没有buildpath,或者项目部署的时候,lib文件夹没有成功部署该jar包

解决方案二:

估计是版本不匹配。这个得试的吧,不建议说用最新的版本

时间: 2024-10-28 07:43:36

mybatis-ssm项目:明明已经导入jar包,但运行时却报ClassNotFoundException异常。的相关文章

android-关于eclipse中Android项目导入jar包的问题

问题描述 关于eclipse中Android项目导入jar包的问题 本人刚刚开始自学Android robotium自动化测试. 学习写一个计算器测试的例子, 可是新建完Android Test Project(已导入源代码), 在工程下创建了libs文件夹,可是右键Build Path这一项中没有"add to build path"这一项 另外有人告诉了我右键工程也可以直接添加jar包,我想知道右键直接在工程中添加跟新建文件夹添加有何区别? 求大神指教!!! 解决方案 eclips

java-在myeclipse中的项目下导入jar包,不显示

问题描述 在myeclipse中的项目下导入jar包,不显示 我是在myeclipse中的项目下建了一个lib文件夹,然后把jar包复制进入,如果jar包是zip压缩格式的可以显示,但是导入后是错误的,而jar格式的不显示,没法导入,如果在电脑本地的lib文件夹下是有包的,请问这什么原因怎么修改 解决方案 你导入jar包为什么不用build path? 解决方案二: 是不是你MyEclipse设置的问题;如果不是你关闭项目重启,或者关掉myeclipse重启看看 解决方案三: 1.刷新项目 2.

Android项目导入JSON的jar包后运行报错

问题描述 Android项目导入JSON的jar包后运行报错 如图,通过这样的方式导入了JSON的Jar,可是导入后项目就运行报错了: 解决方案 have a try... http://blog.csdn.net/mxlxiao7/article/details/8978930 解决方案二: 解决方案三: 我知道是Jar冲突,到底是哪个冲突呢 解决方案四: 你是不是引入了外部工程. 错误信息提示,你的 apache/commons/collections 重复引用了. 应该同一个jar包,使用

MyEclipse 项目导入jar包后就不能对其进行修改了,build path的按钮是灰色的。

问题描述 MyEclipse 项目导入jar包后就不能对其进行修改了,build path的按钮是灰色的. myeclipse版本10 重新安装后仍然这样~~ 解决方案 没遇到过呢?不知道,你在试试 解决方案二: 难道你忘了怎么创建的包吗 解决方案三: 应该是你操作方式的问题,,

Eclipse导入JAR包的方法

导入JAR包实际上就是建立一种链接(相对路径链接 或者 绝对路径链接),并不是COPY式的导入.  导入方法 方法一(建立的是相对路径链接): 如果是Web 工程,可以直接拷贝JAR 文件,放入工程的"WebRoot\WEB_INF\lib"下面,Myeclipse会自动将这些JAR 包导入"Referenced Libraries"中,并使得工程与JAR包建立相对路径链接.   方法二(建立的是相对路径链接): 右键点击项目 =>Properties =&g

android-Android4 导入jar包 便已通过但是运行时报错(找不着类)

问题描述 Android4 导入jar包 便已通过但是运行时报错(找不着类) JAR包引用及配置如上图,编译可通过,但是运行时报: E/dalvikvm(26135): Could not find class 'com.haier.hles.remoting.rf.action.RfWsProxy', referenced from method com.goma.example.MainActivity$LoginTask.doInBackground 解决方案 http://www.cnb

jar包导入-关于在android中导入jar包

问题描述 关于在android中导入jar包 1,右键工程, Build path, java build path, 2,选择libraries在右边的按钮中点击"Add Library" 3,选择"User library",点击"下一步" 4,点击"User librarys"按钮在出现的界面中点击"New.."按钮 在弹出的界面中随便起一个名字,点击"确定" 5,点击"

eclipse-导入javax.xml.bind.jar包后运行android项目出错

问题描述 导入javax.xml.bind.jar包后运行android项目出错 导入javax.xml.bind.jar包后运行android项目出现Conversion to Dalvik format failed with error 1,什么原因,怎么解决 解决方案 http://blog.csdn.net/androidzhaoxiaogang/article/details/6889876http://dev.wo.com.cn/docportal/doc_queryMdocDet

java-在IDEA中配置好maven后,就会自动导入jar包么?

问题描述 在IDEA中配置好maven后,就会自动导入jar包么? 本地安装好maven后,在idea里面配置好,以后新建maven项目就不用导jar包了么? 这么智能么?怎么实现的? 求大神解答 解决方案 所谓的智能并不是不用导入jar包.而是帮你解决了jar直接的依赖,冲突问题.从maven中央仓库中copy对应的代码就可以自动下载jar,缺陷是要网络才行. 中央仓库地址:http://mvnrepository.com/ 解决方案二: 根据 你pom.xml 中的 配置会去maven 仓库