一个Maven项目在eclipse中正常,但在IDEA中启动时报错

一个Maven项目在eclipse中正常,但在IDEA中启动时报错

报的错是项目的dao层和Mybatis框架的.xml配置文件绑定不上。总是报:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

无效的绑定,绑定异常。(这个问题卡了我一上午)

解决办法参考链接: https://www.cnblogs.com/deolin/p/7703886.html


接下来自己总结一下(几乎都和参考链接内容一致):

这个项目十有八九最初是在ecplise创建的,框架上十有八九整合了Mybatis,报的错误十有八九是:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

产生这个现象原因是这个Maven项目还不是一个不依赖IDE的纯Maven项目。

它在ecplise之所以不报错是因为eclipse build项目的时候自动将***Mapper.xml拷贝到了target文件夹,但项目作为Maven项目导入到IDEA时,却不会有类似的设置。

比较合适的方法是将这个策略写进pom.xml的标签内,这样一套源码在两种IDE都不会出现问题。

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

然后右键项目 Rebuild Module ***

以上方法,亲测有用。

原文地址:https://www.cnblogs.com/xm970829/p/13434217.html