搞Mybatis的时候出现一个错,报错信息如题.
主要是映射文件加载的问题.
假如java文件夹中跟resources文件夹中的目录是一一对应,也就是下面这样
main | java | com | swifter | mapper | UserMapper.java |
resources | com | swifter | mapper | UserMapper.xml |
上面这样的实际目录结构(在文件夹中)是不会有问题的,java文件跟xml文件会打包到同一个目录下,如下图
但是通过idea在resources中创建的实际目录结构是下面这样┑( ̄Д  ̄)┍
main | java | com | swifter | mapper | UserMapper.java |
java | com.swifter.mapper | UserMapper.xml |
打包之后实际目录结构如下图,xml文件被打包到一个名叫com.swifter.mapper的文件夹,这就导致xml文件找不到.
解决方法:
<build> <!-- 这个元素描述了项目相关的所有资源路径列表,例如和项目相关的属性文件,这些资源被包含在最终的打包文件里。 --> <resources> <resource> <!-- 描述存放资源的目录,该路径相对POM路径 --> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources> </build>