首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >让springboot应用程序运行/构建特定配置文件时遇到问题

让springboot应用程序运行/构建特定配置文件时遇到问题
EN

Stack Overflow用户
提问于 2020-08-27 11:40:17
回答 1查看 28关注 0票数 0

我使用Maven作为我的构建工具。对于SpringBoot中的配置文件管理,我使用了yml文件。

对于我的SpringBoot应用程序,我设置了以下应用程序-*.yml文件:

代码语言:javascript
运行
复制
application.yml
application-local.yml
application-foobar.yml

我对应的pom.xml配置文件配置:

代码语言:javascript
运行
复制
<profiles>
    <profile>
        <id>local</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <activatedProperties>local</activatedProperties>
        </properties>
    </profile>
    <profile>
        <id>foobar</id>
        <activation>
            <activeByDefault>false</activeByDefault>
        </activation>
        <properties>
            <activatedProperties>foobar</activatedProperties>
        </properties>
    </profile>
</profiles>

每当我尝试通过Maven打包或运行我的应用程序时:

代码语言:javascript
运行
复制
> mvn package -P <any configured profile>

> mvn spring-boot:run -P <any configured profile>

该应用程序运行,但它只运行回退到默认配置文件(application.yml)。每次我尝试在我配置的任何配置文件下运行该应用程序时,都会得到以下日志条目:

代码语言:javascript
运行
复制
: No active profile set, falling back to default profiles: default

我似乎在互联网上找不到任何关于这个问题的明确信息。任何帮助都将不胜感激。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-28 00:41:27

Maven构建配置文件和Spring bean配置文件是两个完全不同的概念,它们恰好使用相同的名称,但并不相互作用。

您使用<profiles></profiles>显示的XML配置了Maven build profiles,但不会对Spring bean配置文件产生任何影响。

根据Spring Framework documentation on activating a profileSpring Boot documentation on passing arguments when running an application,您可以在使用Maven运行应用程序时选择活动的Spring bean配置文件,命令如下:

代码语言:javascript
运行
复制
> mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Dspring.profiles.active=local"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63608798

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档