Spring Cloud Config Server问题

时间:2016-05-16 20:48:05

标签: spring spring-boot

我目前正在尝试使用Spring Cloud Config,而且我无法让Spring Cloud Config Server从我的github存储库加载属性。我一直关注这里的文档:

http://cloud.spring.io/spring-cloud-config/spring-cloud-config.html#_spring_cloud_config_server

这是我的Maven pom.xml文件:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-parent</artifactId>
    <version>1.0.2.RELEASE</version>
  </parent>

  <groupId>com.example.spring.cloud</groupId>
  <artifactId>spring-cloud-test</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>Spring Cloud Test</name>

  <dependencies>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-config-server</artifactId>
    </dependency>    
  </dependencies>
</project>

这是我的Application类:

package com.wth.service.config;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;

@SpringBootApplication
@EnableConfigServer
public class Application {

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

这是我的application.yml文件:

spring:
  cloud:
    config:
      server:
        git:
          uri: https://github.com/crn717/TestRepo.git

server:
  port: 8001

这是我的hello-world-default.yml文件,它位于我上面的git存储库中:

firstName:John
lastName:Smith

当我运行应用程序时,它启动正常。但是,当我访问http://localhost:8001/hello-world/default时,我收到以下回复:

{"name":"hello-world","profiles":["default"],"label":"master","propertySources":[]}

如您所见,没有财产来源。

有没有人注意到我到目前为止所做的事情有什么问题?我现在已经和它搏斗了好几天,似乎无法弄清楚发生了什么。任何帮助都将非常感激。

谢谢, 克里斯

2 个答案:

答案 0 :(得分:1)

经过一些试验和错误,我能够通过指定&#34; Angel.SR6&#34;来完成工作。作为&#34; spring-cloud-starter-parent&#34;的版本我的Maven pom.xml文件中的工件。

克里斯

答案 1 :(得分:0)

我已尝试使用您的代码并获得以下回复:

 {"name":"hello-world","profiles":["default"],"label":null,"version":"68a2c21e35754e0db0dc870dc8126d8e0e8429a0","state":null,"propertySources":[{"name":"https://github.com/crn717/TestRepo.git/hello-world.properties","source":{"firstName":"John"}}]}

spring-boot-starter-parent的版本是1.5.8.RELEASE,pom.xml:

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

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <spring-cloud.version>Dalston.SR4</spring-cloud.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

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

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

也许您可以将自己的版本从1.0.2.RELEAS更新为1.5.8.RELEASE