idea 在编译时默认会将resources里的资源文件进行导出,如果你的资源文件放到别的目录下,则默认情况下是不会进行导出的,例子:
如果UseMapper.xml放到dao下,在编译的时候并不会导出,使得我们的代码出错
可以看到并没有把UseMapper.xml进行导出发布。
解决方法
-
可以在resources创建对应的包,把相应的xml放进去,当然路径得对,如:
-
maven由于他的约定大于配置(狂神抄的),所以我们可以在pom.xml中build配置resources,防止资源导出失败
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> <resource><directory>src/main/resources</directory><includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build>