Could not find resource mybatis-config.xml 问题的解决方案&&Mabats找不到xml的资源文件文件怎么办?


1:问题概述:Could not find resource mybatis-config.xm

Could not find resource mybatis-config.xml 问题的解决方案&&Mabats找不到xml的资源文件文件

1.1idea报错

1.1.1 分析

项目目录结构
image

找不到资源文件
1.是否是文件地址写错了呢?
image
发现没有错
2.是否是资源拦截器拦截了xml文件呢?
image
果然拦截器拦截了资源
现在我们把resource标签去掉
Run:
image
The error may exist in com/yujie/mybatis/mappers/UserMaper.xml
现在我们去看看 com/yujie/mybatis/mappers/UserMaper.xml
image
Maven编译的时候UserMaper.xml没有编译
这个问题的解决办法是:
Maven由于约定大于配置的理念。 遇到无法生效或者或者导出的资源需要在pom.xml中配置resources标签

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

Run:
image
现在可以跑了

问题总结

在使用Maven的过程中,错误的配置pom.xml,

	 <build>
        <resources>
            <resource>
			<!--directory:目录 描述:描述存储资源的目录。 该路径是相对于POM的-->
                <directory>src/main/resources</directory>
				<!--includes:包括 描述:要加载的资源目录,例如**/*.xml  -->
				<!-- 如果不加载资源就用这给标签配置资源文件的地址 -->
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
				<!--excludes:拦截 描述:要拦截的资源目录 -->
				<excludes>
                    <exclude></exclude>
                </excludes>
				<excludes>
                    <exclude></exclude>
                </excludes>
				<!-- turn 启动,false 不启动-->
                <filtering>true</filtering>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <excludes></excludes>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
        </resources>
    </build> 

一定要明白resources标签中includes和excludes的区别一旦用错,资源就会不加载或者被拦截

2021-05-19 10:57:31 星期三


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM