项目部署时,需要将配置文件外置,这样方便后期运维人员进行修改配置项。
Springboot读取核心配置文件(application.properties/yml)的优先级:
Jar包同级目录的config目录
Jar包同级目录
classPath(即resources目录)的config目录
classpath目录
上面是springboot默认去拿自己的核心配置文件的优先级,还有一种最高优先级的方式是项目启动时通过命令的方式指定项目加载核心配置文件,命令如下
java –jar -Dspring.config.location=xxx/xxx/xxxx.properties xxxx.jar
项目pom文件添加如下代码,打包时排除项目内部配置文件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<!--添加配置跳过测试-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
<!--排除本地配置文件-->
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>**/*.yml</exclude>
</excludes>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
原文章:https://blog.csdn.net/woshichenjianmin/article/details/114884884