首页 文章

spring cloud config客户端没有从配置服务器加载配置

提问于
浏览
8

我关注此链接:http://cloud.spring.io/spring-cloud-config/spring-cloud-config.html#_client_side_usage

我一次又一次地测试了这个并没有看到Spring Cloud 客户端正在从 Cloud 服务器加载配置,请帮助看看错误在哪里:

POM:

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>

    </dependency>
</dependencies>

应用:

@Configuration
@EnableAutoConfiguration
@RestController
public class ConfigclientApplication {

    @Value("${spring.cloud.config.uri}")
    String url;

    @Value("${production.host}")
    String host;


    @RequestMapping("/")
    public String home() {
        return "Host is  => " + this.host ;
    }

    public static void main(String[] args) {
        SpringApplication.run(ConfigclientApplication.class, args);
    }
}

bootstrap.properties:spring.cloud.config.uri = http://localhost:8888

{ “名称”: “思博伦”, “简档”:[ “默认”], “标签”: “主”, “propertySources”:[{ “名称”: “类路径:/spirent.yml”, “源”: { “production.host”: “服务器1”, “production.port”:9999, “production.value1”:12345 “test.host”: “server2.com”, “test.port”:4444,“测试 . 值 “:” hello123" }}]}

创建名为'configclientApplication'的bean时出错似乎自动注入@Value无法找到production.host环境值 .

从配置服务器加载后,如何在客户端中读取配置?

谢谢你的帮助 .

1 回答

  • 5

    正如Deinum所暗示的那样,我确保您将客户端配置为父级作为spring-cloud-starter-parent并为其提供版本 . 当你在依赖项中包含并且记住 Cloud 是一个与启动不同的项目时,Spring Cloud 提供的Maven插件不会工作 . 将其更改为:

    <parent>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-parent</artifactId>
        <version>1.0.0.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>
    

    其次,作为一门新学科(可能不是你的问题),我会在你的应用程序中使用新的注释而不是@Configuration和@EnableAutoConfiguration

    @SpringBootApplication
    

    第三,仔细检查配置服务器上是否有@EnableConfigServer

    第四,确保客户端上的bootstrap.properties具有指定的spring应用程序名称:

    spring.application.name=spirent
    

    最后,如果您使用了spring-cloud-config示例项目,则必须在URI中设置默认用户和安全密码:

    http://user:ddf4757e-0077-42e4-b2ad-2ae04340b08c@localhost:8888
    

    否则,请尝试从位于此处的spring-cloud-config项目开始,以确保正确设置配置服务器:

    https://github.com/spring-cloud/spring-cloud-config
    

相关问题