完美解决maven项目配置文件不生效、更新问题

0.前言

三种需求情况[场景]以及解决办法

    1。不知道为什么配置文件[xmlymlproperties]不生效。[可能是java路径也可能是resource路径] 2。Maven项目配置文件 不实时更新 3。非resource路径下的配置文件不生效

1.把Maven打包方式换成打jar包

pom.xml修改打包方式
  
  <groupId>com.biturd</groupId>
  <artifactId>logStudy</artifactId>
  <packaging>pom</packaging>
  <version>1.0-SNAPSHOT</version>


改为
  <groupId>com.biturd</groupId>
  <artifactId>logStudy</artifactId>
  <packaging>jar</packaging>  
  <version>1.0-SNAPSHOT</version>

[好像不加<packaging>标签默认就是jar,我手贱了mmp]

1.1. 打包方式是pom时

<packaging>pom</packaging>

1.2.打包方式换成jar包。

<packaging>jar</packaging>

花了 我 一早上。。卧草。。罪魁祸首 恶心

原因: pom打包方式时 只是在就是本地maven仓库加入这个依赖了,别的模块引用的时候没问题。jar打包是target里面啥都有,同时生成jar包,同时maven仓库生成这个依赖。

2. maven项目build的原理及配置文件不能实时更新的问题

因为maven打包 原理是将java路径下的编译[build],将resources下的直接复制过去。 所以这也会出现,你更新了配置文件而项目中没有用上的问题。[解决方法就只有重新编译了,或者你直接改target目录下的资源文件也行] [这估计是所有接触maven的小伙伴一开始都会遇到的问题 ]

3. 如何让java路径的配置文件生效 [引入除了resource目录下的其他配置文件]

<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <excludes>
                <exclude>**/*.java</exclude>
                <!-- **是所有文件的意思,如果文件来自其他地方可以仿照这个配置 -->
            </excludes>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
        </resource>
    </resources>
</build>

4。 idea中可能导致配置文件不生效或者target的路径变化的原因总结

    idea会将maven pom的信息本地化为这个项目的信息保存在 .idea中。

这个刷新也能同步idea与maven的配置。[reimport]

如果还不能解决你的问题并且你还怀疑是这方面原因可以删除 .idea和.iml文件重新导入一下项目。

    输出路径
经验分享 程序员 微信小程序 职场和发展