是java.lang.NoClassDefFoundError:org/apache/ibatis/session/SqlSessionFactory与mybatis和Spring

TP_*_*AVA 7 spring spring-jdbc spring-aop mybatis

我是Mybatis的新手并尝试使用Spring实现mybatis但在启动tomcat时遇到以下运行时错误.

这是我的 pom.xml

<dependency>
    <groupId>c3p0</groupId>
    <artifactId>c3p0</artifactId>
    <version>0.9.1.2</version>
</dependency>
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>1.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

和应用环境:

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="uactivityDS"/>
    <property name="configLocation" value="classpath:mybatis-config.xml"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

错误是:

the resource [applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: org/apache/ibatis/session/SqlSessionFactory
Run Code Online (Sandbox Code Playgroud)

但是该mybatis-spring-1.0.0.jar文件存在于war/web-inf/lib.

知道这种情况下发生了什么吗?

Rav*_*avi 5

如果您查看mybatis-spring-1.0.0.jar的pom.xml,它具有 mybatis 3.0.4 的编译时依赖项,其中包含类 org/apache/ibatis/session/SqlSessionFactory。

所以包括那个 jar 以及在 pom.xml 中提到的其他人,你应该很好。