maven多环境配置如下:

<profile>
<id>dev</id>
<properties>
<spring.active>dev</spring.active>
<config.server-addr>127.0.0.1:8848</config.server-addr>
<config.namespace></config.namespace>
<config.group>DEFAULT_GROUP</config.group>
<config.redis-host>localhost</config.redis-host>
<config.redis-port>6379</config.redis-port>
<config.redis-pwd></config.redis-pwd>
<discovery.server-addr>127.0.0.1:8848</discovery.server-addr>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>

application.yml使用如下:

spring:
profiles:
active: @profileActive@

报错如下:

Caused by: org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next token
found character '@' that cannot start any token. (Do not use @ for indentation)
in 'reader', line 19, column 13:
active: @profileActive@

解决方案如下:pom中增加

<build>
<finalName>${project.artifactId}</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>