1、问题针对的场景
mapper目录与dao目录放在同一级目录下(或者都在java源码目录内),eclipse启动项目正常,IDEA启动项目总是报Invalid bound statement (not found),并经过排查target目录,发现mapper文件根本没有生成到target中。
2、解决方案
在pom文件<build>标签内加入以下代码
<!--解决Intellij构建项目时,target/classes目录下不存在mapper.xml文件--> <resources> <resource> <directory>${basedir}/src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> </resources>
3、问题解析
对于MAVEN项目,Eclipse会自动把项目src\main\java\目录下的配置文件(.xml)和资源文件(.properties)扫描到target目录下,而intellij idea默认是不会帮我们做这件事的,除非你配置了。