idea pom profiles 配置的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了idea pom profiles 配置的使用相关的知识,希望对你有一定的参考价值。

参考技术A 多配置文档的使用

Maven 中有一个概念叫做:profile,它的诞生主要是为了解决不同环境所需的不同变量、配置等问题。

有了 profile,可以根据激活的条件,启动不同条件下的配置信息。

profile 是可以有多个的,也可以同时激活多个 profile,方便自由组合。

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

</plugins>

<resources>

<resource>

<directory>src/main/resources</directory>

<filtering>true</filtering>

<excludes>

<exclude>application.properties</exclude>

<exclude>application-dev.properties</exclude>

<exclude>application-local.properties</exclude>

</excludes>

</resource>

<resource>

<directory>src/main/resources</directory>

<filtering>true</filtering>

<includes>

<include>application-$profiles.active.properties</include>

            </includes>

</resource>

</resources>

</build>

<profiles>

<profile>

<!-- 开发环境 -->

        <id>dev</id>

<!--这三行不管用-->

        <activation>

<activeByDefault>true</activeByDefault>

</activation>

</profile>

<profile>

<!-- 生产环境 -->

        <id>prod</id>

<properties>

<profiles.active>prod</profiles.active>

</properties>

</profile>

</profiles>

并在application.properties中加载

spring.profiles.active =@profiles.active@

只需在右侧的profiles的选项打对应的√就行。

idea 中的 profiles 详解


profile 主要是为了解决不同环境所需的不同变量、配置等问题.

profile 一般出现在两个地方:settings.xml,pom.xml

在 settings.xml 时,一般用来做仓库的选择(只使用 aliyun 仓库可以这样配置 settings.xml)

在 pom.xml 时,一般用来激活环境配置

<profiles>
        <profile>
            <id>local</id>
            <properties>
                <profiles.active>local</profiles.active>
            </properties>
        </profile>
        <profile>
            <id>elk</id>
            <properties>
                <profiles.active>elk</profiles.active>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
    </profiles>

与profile打包时搭配使用的build 代码如下配置(结合application-$env.properties文件使用)

application-$env.properties 中的部分内容

application-prepub.properties 中 spring.profiles.active=prepub-qa
application-daily.properties 中 spring.profiles.active=daily
application.properties 中 spring.profiles.active=@env@

以上是关于idea pom profiles 配置的使用的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot多modules的pom文件配置

idea配置多环境启动,dev、test、prod

关于pom文件的描述

idea中maven导入jar包

idea中maven导入jar包

在 IDEA 中使用 JUnit Runner 时找不到 Spring Profile