首页 > 技术文章 > 新版IntelliJ IDEA中Mybatis报Invalid bound statement (not found)错误解决办法

dongfangzan 2016-09-20 11:27 原文

由于新版的IntelliJ IDEA不再编译source folder下的xml文件,而我们平时使用mybatis时,习惯于将*Mapper.xml文件放在与dao层、service层平级的src目录下。这就导致ItelliJ IDEA不会变异这些xml文件夹,从而导致Invalid bound statement (not found)的发生。

解决方法如下:

1、将*Mapper.xml文件夹放在resource文件夹下,但是这种方式会打破原来的代码结构,如果团队中有人用eclipse有人用IntelliJ,这样就比较麻烦了;

2、在maven项目的pom.xml中build标签下插入:

    <resources>
      <resource>
        <directory>src/main/java</directory>
        <includes>
          <include>**/*.xml</include>
        </includes>
      </resource>
    </resources>


手工将src下所有xml文件引入编译;

3、进入Project Structure -> Modules中,将你的mapper目录设置为Resouce类型:



 

推荐阅读