IDEA SpringBoot Maven profiles 配置
IDEA版本: IntelliJ IDEA 2022.2.3
注意:切换环境之后务必点击一下刷新,推荐点击耗时更短。
application.yaml
spring:profiles:active: @env@
多环境文件名: application-dev.yaml
、 application-prod.yaml
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.14</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example</groupId><artifactId>maven-profile</artifactId><version>0.0.1-SNAPSHOT</version><name>maven-profile</name><description>maven-profile</description><properties><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><profiles><profile><id>dev</id><activation><activeByDefault>true</activeByDefault></activation><properties><env>dev</env></properties></profile><profile><id>prod</id><properties><env>prod</env></properties></profile></profiles><build><resources><resource><directory>src/main/resources</directory><filtering>true</filtering><includes><include>application.yaml</include><include>application-${env}.yaml</include></includes></resource></resources><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
常见报错信息:
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 3, column 13:active: @env@^
解决办法:切换环境之后手动点击一下刷新,推荐点击耗时更短。