首页 > 其他分享 >进一步解决关于maven打包时,资源文件没有被打包进来的问题

进一步解决关于maven打包时,资源文件没有被打包进来的问题

时间:2022-08-24 20:33:34浏览次数:61  
标签:xml 文件 配置文件 maven pom 打包 2959692 resources

进一步解决关于maven打包时,资源文件没有被打包进来的问题

起因

第一次使用Mybatis,将配置文件放在java包下,结果出现了配置文件编译后无法同步到target目录下

这里我们可以看到:

maven默认的打包资源:将resources下资源打包,而java包xml下配置文件未打包到target目录下

遇到的第一个问题

我通过百度找到了解决方案,在pom.xml文件中添加了下面这段代码

这是代码

<resources>
   <resource>
       <directory>src/main/resources</directory>
       <excludes>
           <exclude>**/*.properties</exclude>
           <exclude>**/*.xml</exclude>
       </excludes>
       <filtering>false</filtering>
   </resource>
   <resource>
       <directory>src/main/java</directory>
       <includes>
           <include>**/*.properties</include>
           <include>**/*.xml</include>
       </includes>
       <filtering>false</filtering>
   </resource>
</resources>

 

重新编译后,可以发现resources 下的配置文件并没有打包到target目录下

这里我百思不得其解,网上又看了很多博客,无非以下几个解决方案

  • 在pom.xml文件中插入我上面已经加入的代码,然而我插入上面代码解决了问题,也出现了新的问题

  • 手动copy,将配置文件粘贴到target目录的classes文件夹下

  • pom.xml文件打包方式可能被更改为了pom,将其更改为jar或者war

随着学习的深入,我也是把java包下的配置文件转移到了resources文件夹下

我这是还没意识到是添加的那段代码的问题,每次修改都要重新copy,很烦

问题解决

这段代码网友们都没有出错,都可以正常打包resources下的配置文件

But 我就是做不到

解决方案:将这段代码删除,然后将配置文件全部放到resources目录下

总结

  • 使用maven进行打包,若pom.xml中没有配置resources标签,则会采用默认策略,打包资源目录(src/main/resources)下的资源文件。

  • 若pom.xml中配置了resources标签,则完全以配置的为准。(但是我配置的resources标签不行,后面找到原因再说)

![](/i/l/?n=22&i=blog/2959692/202208/2959692-20220824203252863-69012377.png) ![](/i/l/?n=22&i=blog/2959692/202208/2959692-20220824203301672-205751124.png) ![](/i/l/?n=22&i=blog/2959692/202208/2959692-20220824203310380-436807409.png) ![](/i/l/?n=22&i=blog/2959692/202208/2959692-20220824203317694-1214275721.png) ![](/i/l/?n=22&i=blog/2959692/202208/2959692-20220824203323109-282464837.png)

标签:xml,文件,配置文件,maven,pom,打包,2959692,resources
From: https://www.cnblogs.com/gsq-doglife/p/16621468.html

相关文章