提问者:小点点

如何覆盖bootstrap.properties或如何在Spring引导中忽略本地环境的云配置


我有一个应用程序[Spring boot app],它在本地dev env中运行。我在< code > bootstrap . properties 文件中使用了AWS参数存储配置,如下所示:

aws.paramstore.enabled = true
aws.paramstore.prefix = /abc
aws.paramstore.name = xyz/jkl/wer

这些是我在pom.xml文件中的依赖项:

    <dependency>
        <groupId>io.awspring.cloud</groupId>
        <artifactId>spring-cloud-starter-aws-parameter-store-config</artifactId>
        <version>2.4.1</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-bootstrap</artifactId>
        <version>3.1.3</version>
    </dependency>
    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-sts</artifactId>
        <version>1.12.263</version>
    </dependency>

应用程序在上述配置下运行良好。然而,每次当我需要在本地运行我的应用程序时,我都需要注释掉上面的依赖项,否则会引发错误,因为这些jar位于类路径中,他们抱怨没有找到连接等。

我试图找出一些可能性,在这些可能性中,我不必对pom.xml进行任何更改,就可以运行具有本地属性的应用程序。

我尝试在引导程序中将以下属性设置为 false,并在 application-dev.properties 文件中启用它,但是该应用程序没有在 dev 中获取引导程序配置。

#false in bootstrap, enabled in application-dev.properties
aws.paramstore.enabled = false

你能帮我解决这个问题吗。我不希望每次在本地运行应用程序时都在pom中注释掉依赖项。我在这里能用什么把戏。


共1个答案

匿名用户

我在Eclise中找到了一种方法:

然而,主要的问题仍然有效,我们如何在我们的应用程序环境中覆盖bootstrap属性。