主要原因是启动时@spring.active@值未解析出来。
起初主要是想做多环境配置,pom如下:
<profiles>
<profile>
<id>dev</id>
<properties>
<spring.active>dev</spring.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<properties>
<spring.active>prod</spring.active>
</properties>
</profile>
</profiles>
application.yml配置:
# Spring配置
spring:
profiles:
active: @spring.active@
一启动就报错,经分析原因,主要是由于此处@spring.active@值未解析导致,解决方法:
pom里面加入resources标签即可生效,如下配置:
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>*.yml</include>
<include>application-${spring.active}.yml</include>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
大功告成!找错不易,如有帮助请记得点赞转发哦
本文分析了在Spring框架中使用多环境配置时遇到的问题,主要表现为启动时报错,原因是@spring.active@值未被正确解析。通过在pom文件中加入resources标签,并设置正确的过滤规则,最终解决了该问题。
3850

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



