Maven profiles 多环境配置 加载 nacos配置文件
切换配置环境,使用idea,直接打开右侧的maven在Profiels下勾选切换即可
启动 test
application.yml
spring:
profiles:
active: test # 表示测试环境
nacos编辑,配置内容
profiles 标签
what ?? 这里build要有内容???
<profiles>
<profile>
<id>dev</id>
<properties><env>dev</env></properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<resources>
<resource><directory>src/main/resources/profiles/dev</directory></resource>
</resources>
</build>
</profile>
<profile>
<id>test</id>
<properties><env>test</env></properties>
<build>
<resources>
<resource><directory>src/main/resources/profiles/test</directory></resource>
</resources>
</build>
</profile>
</profiles>
配置maven资源文件打包规则,打包资源文件时,需要通过profile里面的profiles.active的值来切换不同环境的资源文件。
build标签
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/*</include>
</includes>
<excludes>
<exclude>profiles/*</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources/profiles/${env}</directory>
</resource>
</resources>
</build>
其他
<properties>里面的<profile.name>是自定义的名称,可以用它在pom或者properties文件中取值。
配置maven资源文件打包规则,通过profile里面<profile.name>自定义的值来切换不同环境的资源文件。
<activeByDefault>true</activeByDefault>表示当前的profile默认激活
在build标签中使用filter
profiles结合resources,可以实现maven打包时指定打包进去的文件
<build>
<!-- 指定使用filter -->
<filters>
<filter>src/main/resources/profiles/${env}/**</filter>
</filters>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/**</include>
</includes>
<excludes>
<exclude>profiles/**</exclude>
</excludes>
<filtering>true</filtering>
</resource>
</resources>
</build>
参考地址
profiles多环境配置 http://t.zoukankan.com/YC-L-p-14865462.html
maven profiles配置切换不生效的问题 https://blog.csdn.net/weixin_39791322/article/details/111666497
|