问题标签 [spring-boot-configuration]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
171 浏览

java - 外部属性 Spring boot

我正在尝试让我的 Spring Boot 项目使用在项目之外定义的属性。我已经尝试了文档中描述的步骤,但我无法让它工作。

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

我将它用于 VM 选项:-Dspring.config.location=file:../properties/但它不起作用。我尝试了多个值spring.config.location但没有成功(我想问题来自这里)。

0 投票
1 回答
788 浏览

spring-boot - Spring Cloud Config Config Server - 多个实例之间的同步

假设我已经开始使用 spring-cloud-config-server 并让它工作(在后台使用 git 存储库)。所以现在我将在集群(mesos 集群或 AWS 云等)上部署该配置服务器

所以为了可靠性等。我想在一个集群中启动两个相同的配置服务实例。通过使用服务注册表,所有其他服务现在都可以连接到该配置服务器并获取它们的配置。

但问题是:如何处理这些配置服务器之间的同步...例如,如果我更改了 git 存储库中的配置,现在两个实例之间缺少时间,将提供完全相同的信息...

是否有解决方案?某种木筏普查协议/设置等?或者是否有唯一的解决方案不使用 spring-config-server 而使用 etcd 或其他解决方案?

更新: 为 git 存储库创建一个预先更新选项可能是一个选项。这确保获得具有性能缺陷的最新状态。

0 投票
1 回答
644 浏览

java - 在 Spring Boot 中管理公共微服务中的属性文件

目前我正在从事 Spring Boot 微服务项目。考虑我有 3 个名为 A、B、C 的微服务。现在我的项目为每个微服务分别有 application.yml 文件。现在我想再添加一个微服务 D,用于管理所有服务属性文件。

查看我的配置服务结构

在此处输入图像描述

eureka.yml(内部配置服务)文件是:

在 eureka-service bootstrap.properties 是:

配置服务应用程序属性:

我的配置应用程序文件是:

我做了以下步骤:

  1. 启动配置服务
  2. 启动尤里卡服务

不幸的是,尤里卡服务器出错。

问题是在运行尤里卡服务器时,它没有查看配置服务中的配置文件......

帮我解决这个问题。或者代替微服务,我该如何使用文件夹?

0 投票
3 回答
23031 浏览

git - Spring Cloud Config Server 使用 Git 的 SSH 密钥并在 Docker 中运行

在最终将它们放在一起之前,我发现了许多问题和教程。想要记录它,以便其他人可以节省数小时的挫败感。

我正在尝试在 BitBucket 上获取一个私有 git 存储库,以使用部署密钥与 Spring Boot Config Server 一起使用,并让它在 Docker 中运行。我遇到了很多问题。

  1. 如何使用 application.yml 文件进行实际配置。

我似乎无法弄清楚我应该把 SSH 信息放在哪里。所有教程似乎都是针对 https 的。

  1. 如何为配置提供私钥。对于 Dev 来说,YML 中的内联语法很痛苦。对于生产,您必须通过环境变量提供它,这是另一个语法苦差事。

我不断收到私钥无效的错误消息。

  1. 如何让 Docker 容器信任主机密钥,而不会出现讨厌的“你信任这个人”提示。

似乎有几种方法可以使这项工作,但只有一种对我有用。

0 投票
1 回答
2406 浏览

java - Spring Boot 多模块测试自动装配

我有一个具有结构的多模块项目:

应用类:

与存储库

和存储库测试

现在,当我运行此测试时,出现错误:

找不到@SpringBootConfiguration,您需要在测试中使用@ContextConfiguration 或@SpringBootTest(classes=...)

当我的存储库模块中有 Application 类时,这不会出现,但我需要将它们分开。让它发挥作用的最佳方法是什么?

如果它有助于我的 Spring 依赖项是:

使用插件org.springframework.boot:spring-boot-gradle-plugin:1.5.8.RELEASE

0 投票
1 回答
1033 浏览

java - 我可以使用@ConditionalOnExpression 检查注释的属性值吗?

我想要一个注释,它将根据属性的值引入不同的配置类。它可能会像这样工作:

(所有这些都是伪代码)

注释:

配置之一的示例:

CacheAnnotationMatcher.checkProperty我创建的类和方法在哪里找到@EnableCaching注释并检查cacheType属性并返回真/假。

0 投票
2 回答
1648 浏览

maven - Spring Boot:使用 Maven 和特定 Maven 配置文件的自动属性扩展不起作用

我正在尝试使用72.1.1 Automatic property expansion using Maven,如使用不同 Maven 配置文件的文档中指定的那样,但我无法使其与特定配置文件一起使用

我有以下内容pom.xml

这非常简单application.properties

我使用 Spring Tool Suite 运行 maven 构建,目标如下:

构建成功,但application.properties目标文件夹中仍包含未解析的@...@占位符。

如果我在两个配置文件之一的 pom.xml 中添加这个简单的行:

占位符已正确解析。

这个配置有什么问题?

0 投票
2 回答
1472 浏览

spring-boot - Spring Boot 常用应用属性

当我们使用像 cassandra/mongo 这样的任何数据库时,Spring Boot 应用程序属性需要遵循https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html的约定。如果我们想声明我们自己的数据库设置属性而不是 spring-boot 约定,那么设置数据库需要执行哪些步骤?

0 投票
1 回答
3102 浏览

java - 如何从 Spring Boot Config Server 提供的其他属性文件中的 application.properties 获取密钥?

集中配置的 Spring 官方教程(https://spring.io/guides/gs/centralized-configuration/)说:

它还将发送来自 Git 存储库中任何名为 application.properties 或 application.yml 的文件的所有值。

我想在特定属性文件中使用该文件中的一些属性a-bootiful-client.properties

可能吗?我试过了,但占位符对我不起作用。

key1=val1例如,我在 application.properties 文件中有一个键值对。然后在a-bootiful-client.properties文件中,我尝试将该密钥作为another.key=${key1}-extraVal.

谢谢

0 投票
2 回答
767 浏览

java - 为什么在 Spring Boot 中超类上的 @Bean 泛型创建方法比子类上的方法调用晚?

我有一个创建 bean 的 Spring Boot 基础抽象配置类。如果我从它继承,bean 将在我的控制器之后创建(它需要自动连接它,因此失败)。注意:它确实是在控制器之后创建的。所以它不能自动连接,但必须通过appContext.getBean( BeanType.class )

如果我改为覆盖子类中的 bean 方法,那么它会在控制器之前创建,并且可以自动连接。

我该如何解决这个问题并使超类 bean 定义与子类同时加载?