1

我想创建一个共享库,为我所有的 spring-boot Web 应用程序客户端提供默认配置。到目前为止,我已经成功地使用这个 SO answer创建了默认执行器配置。但是,我想提供以下三种配置:

spring.cloud.config.discovery.enabled=true
spring.cloud.config.discovery.service-id=MY-CLOUD-CONFIG-SERVER
spring.cloud.config.fail-fast=true

客户端也成功连接到 eureka,并且配置服务器已启动并运行。

我有以下设置,适用于执行器默认配置:

com.livanov.test.DefaultActuatorConfiguration.java

@PropertySource("classpath:default-actuator.properties")
public class DefaultActuatorConfiguration {

}

META-INF/spring.factories

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
  com.livanov.test.DefaultActuatorConfiguration

当我为spring.cloud.config.*属性执行相同的类时,它不起作用。我还尝试在spring.factories 中将它们与org.springframework.cloud.bootstrap.BootstrapConfiguration标记绑定,但这也不起作用。任何这些设置中的客户端都试图连接8888cloud-config. 可能我错过了弹簧自动配置的动作顺序。

我也尝试添加

@Order(Integer.MIN_VALUE)

@AutoConfigureBefore({
    ConfigServiceBootstrapConfiguration.class,
    DiscoveryClientConfigServiceBootstrapConfiguration.class
})

但这些看起来都像黑客,实际上不起作用。

4

0 回答 0