1. 程式人生 > 實用技巧 >Spring boot使用Maven Profile配合Spring Profile進行多環境配置和打包

Spring boot使用Maven Profile配合Spring Profile進行多環境配置和打包

這是很簡單的事,我都不想寫

但是用了Maven Profile之後,我打包就不用每次都改application.yml檔案了

所以特意記錄一下

首先你的Spring Profile要有多環境配置檔案

在pom.xml新增

#識別多環境配置
<profiles>
    <profile>
        <id>dev</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation
> <properties> <profile.active>dev</profile.active> </properties> </profile> .....test就不寫了 <profile> <id>prod</id> <properties> <profile.active>prod</profile.active> </
properties> </profile> </profiles>

此時打包就是這樣了

三 追求完美

在進行打包的時候,我們並不需要把dev或者test等配置檔案打包進行,所有我們在打包的時候進行如下配置

所以在pom.xml新增

<build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <!--
先排除所有的配置檔案--> <excludes> <exclude>application*.yml</exclude> </excludes> </resource> <resource> <directory>src/main/resources</directory> <!--引入所需環境的配置檔案--> <filtering>true</filtering> <includes> <include>application.yml</include> <include>application-${profile.active}.yml</include> </includes> </resource> </resources> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <classifier>exec</classifier> </configuration> </plugin> </plugins> </build>

修改application.yml

spring:
  profiles:
    active: @profile.active@ #此處由maven的環境選擇決定