如何在共享库中创建共享spring配置

时间:2018-12-12 17:01:15

标签: java spring spring-boot spring-boot-configuration

我想创建一个共享库,为所有我的spring-boot Web应用程序客户端提供默认配置。到目前为止,我已经能够成功使用this 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.*属性使用相同的类时,它不起作用。我还尝试使用org.springframework.cloud.bootstrap.BootstrapConfiguration标记将它们绑定在 spring.factories 中,但这也不起作用。这些设置中的任何一个客户端都试图连接到默认的8888端口cloud-config。可能我错过了弹簧自动配置的动作顺序。

我也尝试添加

@Order(Integer.MIN_VALUE)

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

但是它们看上去都像黑客一样,实际上是行不通的。

0 个答案:

没有答案