mybatisplus Invalid bound statement (not found)找不到mapper.xml文件总结

1.检查xml的namespace是否和xml文件的package名称对应,以及方法名成参数类型和接口,返回类型是否一致。

2.检查xml中是否使用了type别名,如果用了别名,检查下别名包名是否配置正确,如果不确定,可以将实体类全包名加上去,还有就是看下实体类里面是否使用了typeHandler类型处理器,如果使用了,记得将完整包名加上去。

3检查mybatis-plus: mapper-locations: 配置的路径是否正确**
classpath和classpath的区别 classpath会扫把项目下其他模块路径下的文件,classpath只扫描当前模块。

|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
如果检查以上之后还是报错
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
请检查编译后的文件target目录下相对应的目录下xml是否存在,如果不存在请在pom.xml中添加配置

  <build>
	<resources>
			<resource>
				<filtering>true</filtering>
				<directory>${basedir}/src/main/java</directory>
				<includes>
					<include>**/*.xml</include>
				</includes>
			</resource>
			<resource>
				<directory>${basedir}/src/main/java</directory>
				<excludes>
					<exclude>**/*.xml</exclude>
				</excludes>
			</resource>
		</resources>
	</build>

点击clean(删除target),complie(编译)后点击maven的运行。
在这里插入图片描述
如果还是不可以

可以查看下日志,一下就能查出来,如果没有出现如下日志,基本上就是你的packaging的问题:

[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ admin ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 45 source files to D:\xxxx\admin\target\classe

删除pom.xml中的packaging标签

<packaging>war</packaging>

重新编译即可解决
|||||||||||||||||||||||||||||||||||||||||||||||||||||||

最后一招
手动copy 把需要编译的文件拷贝到target所在位置就好了。(不推荐使用,后续打包等等可能会出现其他问题,没有办法的时候可以使用)

||||||||||||
**

知识点穿插 || pom.xml中packaging标签的使用

**
|||||||||||||

1. pom

父级项目中的pom.xml文件使用的packaging配置一定为pom。父级的pom文件只作项目的子模块的整合,不会编译生存.class,target包,在maven install时不会生成jar/war压缩包。

2. jar

Jar包是最为常见的打包方式,当pom文件中没有设置packaging参数时,默认使用jar方式打包。
这种打包方式意味着在maven build时会将这个项目中的所有java文件都进行编译形成.class文件,且按照原来的java文件层级结构放置,最终压缩为一个jar文件。
当我们使用mvn install命令的时候,能够发现在项目中与src文件夹同级新生成了一个target文件夹,这个文件夹内的classes文件夹即为刚才提到的编译后形成的文件夹

3. war

war包与jar包非常相似,同样是编译后的.class文件按层级结构形成文件树后打包形成的压缩包。不同的是,它会将项目中依赖的所有jar包都放在WEB-INF/lib这个文件夹下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值