Spring Boot 指定运行的yml配置文件

一般来说,项目中有好几个配置文件,那么怎么指定我们需要运行的配置文件呢?

截屏2020-06-09 下午12.01.07.png
spring:
  # 环境 dev|test|prod | ctp
  profiles:
    active: #spring.profiles.active#

我们可以利用pom文件,来对#spring.profiles.active#这个参数进行动态的修改。

首先,要自定义一个yml的变量符号

    <properties>
        <!--自定义yml变量符号-->
        <resource.delimiter>#</resource.delimiter>
    </properties>

之后。设置一些配置

    <profiles>
        <!--本地开发环境-->
        <profile>
            <id>local</id>
            <properties>
                <spring.profiles.active>local</spring.profiles.active>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault> <!-- 默认local -->
            </activation>
        </profile>
        <!--测试环境-->
        <profile>
            <id>test</id>
            <properties>
                <spring.profiles.active>test</spring.profiles.active>
            </properties>
        </profile>
        <!--生产环境-->
        <profile>
            <id>prod</id>
            <properties>
                <spring.profiles.active>prod</spring.profiles.active>
            </properties>
        </profile>
        <!--MAC-->
        <profile>
            <id>mac</id>
            <properties>
                <spring.profiles.active>mac</spring.profiles.active>
            </properties>
        </profile>
    </profiles>

再对打包配置进行一些修改~

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
        <!-- 根据环境配置来设置jar包名称 -->
        <finalName>${project.artifactId}_${project.version}-${spring.profiles.active}</finalName>

        <!-- 根据环境配置来加载配置文件 -->
        <resources>
            <resource>
                <directory>src/main/resources/${profiles.active}</directory>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>

这样的话,在idea里面,就可以点击按钮进行切换了。

截屏2020-06-09 下午12.04.16.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。