通过Maven在SpringBoot中配置活动配置文件
我正在尝试使用Maven 3
在Spring Boot应用程序中设置活动配置文件。在我的pom.xml中,将默认的活动配置文件和属性spring.profiles.active设置 为development:
<profiles>    <profile>
        <id>development</id>
        <properties>
            <spring.profiles.active>development</spring.profiles.active>
        </properties>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
</profiles>
但是每次我运行应用程序时,都会在日志中收到以下消息:
No active profile set, falling back to default profiles: default并且将SpringBoot配置文件设置为默认值(读取application.properties而不是application-development.properties)
我还应该怎么做才能使用Maven配置文件设置SpringBoot活动配置文件?
回答:
Maven配置文件和Spring配置文件是完全不同的两件事。你的pom.xml定义spring.profiles.active了在构建过程中可用但在运行时不可用的变量。这就是为什么仅激活默认配置文件的原因。
如何将Maven配置文件与Spring绑定?
你需要将build变量传递给你的应用程序,以便在启动时可以使用它。
在你的中定义一个占位符application.properties:
spring.profiles.active=@spring.profiles.active@该@spring.profiles.active@变量必须与Maven配置文件中声明的属性匹配。
在你的pom.xml中启用资源过滤:
<build>    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
    …
</build>
执行构建后src/main/resources,Maven将处理目录中的所有文件,并且其中的占位符application.properties将替换为你在Maven概要文件中定义的变量。
以上是 通过Maven在SpringBoot中配置活动配置文件 的全部内容, 来源链接: utcz.com/qa/431579.html
