Maven静态资源过滤问题

问题描述

今天写mybaits的时候,将Mapper与Mapper.xml放在了同一个文件夹。

 

 

但是在测试的时候,报了如下错误:

 

 我明明已经绑定过了,为什么会显示找不到呢?

打开编译生成的target目录,发现果然在这里面也没有Mapper.xml

那就是Maven在编译的时候没有找到这个静态资源

 

解决方法

第一种

将Mapper.xml放在resources目录下面。

最好是按照Mapper的目录结构建包,比如:

我的UserMapper的目录是com.gazikel.mapper.UserMapper

那么我的UserMapper.xml在resources包下的目录也是com.gazikel.mapper.UserMapper.xml

第二种

在pom.xml中加入

<build>
    <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>
</build>

刷新maven,clean一下重新运行程序,问题解决!

posted @ 2021-09-06 20:43  Gazikel  阅读(201)  评论(0编辑  收藏  举报