解决spring-boot中mybatis的.xml文件只能放在resources/mappper

本文解决了Jenkins或Eclipse使用Maven打包WAR时,Mapper XML文件缺失的问题。通过在pom.xml中添加资源配置,确保了XML文件被正确包含在WAR包中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

https://segmentfault.com/q/1010000013418822

 发现了问题就要从根本上解决,而不应该当出现了问题再去解决。我最后发现Jenkins通过maven把项目打成war包,或者Eclipse通过使用maven命令tomcat7:deploy远程自动部署项目打成的war包,war包里面缺少Mapper对应的xml文件,也就是没有把xml文件打包进去。解决办法是,在pom.xml文件中的build标签中添加如下代码,显示的强制将xml文件打到war包中:

还有注意的是你的mapper.xml文件是放在src/main/java目录下还是src/main/sources下,如果放在src/main/java下默认打包时xml文件是不加进去的,通过以下配置可解决:

  

        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
        </resources>
<?xml version="1.0" encoding="UTF-8"?> 4.0.0 org.springframework.boot spring-boot-starter-parent 3.4.7 com.example takeoutsystem 0.0.1-SNAPSHOT takeoutsystem takeoutsystem <java.version>17</java.version> <mybatis-plus.version>3.5.7</mybatis-plus.version> <mybatis.version>3.5.15</mybatis.version> <mybatis-spring.version>3.0.3</mybatis-spring.version> <jjwt.version>0.11.5</jjwt.version> <springdoc-openapi.version>2.8.5</springdoc-openapi.version> <thymeleaf-extras-springsecurity6.version>3.1.2.RELEASE</thymeleaf-extras-springsecurity6.version> dev aliyun-maven https://maven.aliyun.com/repository/public true false org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-thymeleaf com.baomidou mybatis-plus-boot-starter ${mybatis-plus.version} org.mybatis mybatis org.mybatis mybatis-spring com.baomidou mybatis-plus org.mybatis mybatis ${mybatis.version} org.mybatis mybatis-spring ${mybatis-spring.version} com.baomidou mybatis-plus ${mybatis-plus.version} com.mysql mysql-connector-j runtime com.h2database h2 test io.jsonwebtoken jjwt-api ${jjwt.version} io.jsonwebtoken jjwt-impl ${jjwt.version} runtime io.jsonwebtoken jjwt-jackson ${jjwt.version} runtime org.springframework.boot spring-boot-starter-security org.thymeleaf.extras thymeleaf-extras-springsecurity6 ${thymeleaf-extras-springsecurity6.version} org.springdoc springdoc-openapi-starter-webmvc-ui ${springdoc-openapi.version} org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine com.baomidou mybatis-plus-boot-starter-test ${mybatis-plus.version} test org.mybatis mybatis org.mybatis mybatis-spring org.springframework.security spring-security-test test org.projectlombok lombok src/main/resources true application*.yml application*.properties src/main/resources false application*.yml application*.properties org.springframework.boot spring-boot-maven-plugin org.projectlombok lombok dev true dev src/main/resources true application.yml application-dev.yml prod prod src/main/resources true application.yml application-prod.yml 修改POM.xml文件,降级MYBATIS版本
最新发布
07-15
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值