1、项目目录配置文件示例
|--src
|--main
|--java
|--resources
|--static
|--mapper
|--templates
|--application.yml
|--application-dev.yml
|--application-pro.yml
|--application-test.yml
|--logback-dev.xml
|--logback-pro.xml
|--logback-test.xml
2、分别在各环境中配置相应的日志策略,例如:在application-dev.properties文件中指定使用的日志配置文件logback-dev.xml
# 日志配置
logging.config=classpath:logback-dev.xml
3、配置pom文件
1、配置多个环境
<project>
<!--分别设置开发,测试,生产环境-->
<profiles>
<!-- 开发环境 -->
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<environment>dev</environment>
</properties>
</profile>
<!-- 测试环境 -->
<profile>
<id>test</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<environment>test</environment>
</properties>
</profile>
<!-- 生产环境 -->
<profile>
<id>pro</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<environment>pro</environment>
</properties>
</profile>
</profiles>
</project>
备注:<environment>标签中的名称对应配置文件的profile名称,即-后面的名称。
<activeByDefault>设置为true时表示默认激活该环境。
2、在pom文件中指定resource目录和配置文件
<build>
<resources>
<resource>
<!-- 指定配置文件所在的resource目录 -->
<directory>src/main/resources</directory>
<includes>
<include>application.yml</include>
<include>application-${environment}.yml</include>
<include>logback-${environment}.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>
3、配置动态变量
在application.yml文件中指定spring.profiles.active参数
spring:
profiles:
active: @environment@
备注:environment对应pom文件中的<environment>标签
4、打包命令
mvn clean install -P test #表示打test环境的jar包