使用spring cloud Concur for int属性引发ConverterNotFoundException

使用spring cloud Concur for int属性引发ConverterNotFoundException,spring,spring-boot,spring-cloud,consul,spring-cloud-consul,Spring,Spring Boot,Spring Cloud,Consul,Spring Cloud Consul,我在启动spring boot/cloud应用程序时收到以下错误消息,该应用程序从Consor获取一些属性: *************************** APPLICATION FAILED TO START *************************** Description: Binding to target demo.config.Config@5b4954b2 failed: Property: config.number Value: ${

我在启动spring boot/cloud应用程序时收到以下错误消息,该应用程序从Consor获取一些属性:

***************************
APPLICATION FAILED TO START
***************************

Description:

Binding to target demo.config.Config@5b4954b2 failed:

    Property: config.number
    Value: ${config.number:5}
    Reason: Failed to convert property value of type 'java.lang.String' to required type 'int' for property 'number'; nested exception is org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.String] to type [int]

Action:

Update your application's configuration
这是我的主要课程:

@SpringBootApplication
@WebAppConfiguration
@EnableDiscoveryClient
@EnableConfigurationProperties
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}
以及配置属性类:

@Component
@ConfigurationProperties(prefix="config")
public class Config {   

    private int number;

    public int getNumber() {
        return number;
    }

    public void setNumber(int number) {
        this.number = number;
    }

}
application.yml文件是:

server:
  port: 8100

spring:
 application:
    name: demo
以及bootstrap.yml文件:

spring:
  cloud:
    consul:
      host: localhost
      port: 8500
    config:
      enabled: true
      prefix: config 

config:
  number: ${config.number:5}
最后是maven pom.xml文件的相关部分:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.3.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.SR1</spring-cloud.version>
    <cucumber.version>1.2.5</cucumber.version>
</properties>

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

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-eureka</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-consul-discovery</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-consul-config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-configuration-processor</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>

<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>

org.springframework.boot
spring启动程序父级
1.5.3.1发布
UTF-8
UTF-8
1.8
Dalston.SR1
1.2.5
org.springframework.boot
SpringBootStarterWeb
org.springframework.boot
spring引导启动器数据jpa
org.springframework.cloud
SpringCloudStarter配置
org.springframework.cloud
春云起动器尤里卡
org.springframework.cloud
spring cloud starter领事发现
org.springframework.cloud
SpringCloudStarterConcur配置
org.springframework.boot
spring引导配置处理器
真的
org.springframework.cloud
spring云依赖关系
${spring cloud.version}
聚甲醛
进口

我发现问题是因为在某些情况下,
PropertySourceBootstrapConfiguration
无法从Consor找到属性源。如果在启动过程中正确启动了
PropertySourceBootstrapConfiguration
,则不会出现此类异常,应用程序会按预期工作。

我发现问题是因为
PropertySourceBootstrapConfiguration
在某些情况下无法从Consult找到属性源。如果在启动过程中正确启动了
PropertySourceBootstrapConfiguration
,则不会出现此类异常,应用程序也会按预期工作。

您认为这与spring cloud Concur有关吗?如果没有Concur的键值配置,即
config:number:5
,则应用程序对于int-type可以正常工作。如果
number
是字符串类型,它也可以正常工作。您认为这与spring cloud Consor有关吗?如果没有Consor的键值配置,即
config:number:5
,则应用程序可以正常工作于int类型。如果
数字
是字符串类型,它也可以正常工作。