最近在学习maven准备通过maven进行项目包的管理及实现持续集成。建了一个maven的基于Spring+SpringMVC+Mybatis的web工程。Mybatis的Mapper的xml文件放在src/main/java的代码目录的dao目录中。用maven编译测试都没有问题,直接用myeclipse部署到tomcat运行也没有问题,用maven打包后发布到服务器上问题来了,启动报错报找不到mapper的xml文件。解压打出的war文件果然在dao目录没有mapper的xml文件。maven打包的输出的目标目录target文件夹也没有相应的文件。问题找到了就是maven打包的时候没有将src下的xml文件打到相应的目录。
解决方式是在pom.xml文件的build节点,添加相应的资源文件的代码:
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
Maven打包遗漏XML文件
本文介绍了一种常见的情况,在使用Maven构建Spring+SpringMVC+Mybatis项目时,发现打包后缺少位于src/main/java目录下的Mybatis Mapper XML文件。文章详细解释了问题的原因,并提供了解决方案,即在pom.xml文件中明确指定资源文件的位置。
3307

被折叠的 条评论
为什么被折叠?



