Spring Boot 2 迁移配置属性无法将 属性 绑定到 String[]

SpringBoot 2 migration ConfigurationProperties Failed to bind property to String[]

我刚刚从 Spring boot 1.5.8 迁移到 2.0.0

我解决了大部分迁移错误,但我对此一无所知:

@Configuration
public class LdapConfiguration {

    @Bean
    @ConfigurationProperties(prefix = "ldap")
    public LdapContextSource contextSource() {
        return new LdapContextSource();
    }

    @Bean(name = "ldapTemplate")
    public LdapTemplate ldapTemplate(ContextSource contextSource) {
        return new LdapTemplate(contextSource);
    }
}

我的自定义值(所有变量都是 var env 属性,这就是为什么分隔符是“_”的原因):

LDAP_URLS=ldaps://ldap-url.com:636/

错误:

Description:

Failed to bind properties under 'ldap.urls' to java.lang.String[]:

    Reason: Unable to get value for property urls

Action:

Update your application's configuration

看起来它无法将我的字符串值 ldap.urls 绑定到 String[],我尝试在我的 属性 中使用 2 个值,用逗号分隔。

有什么想法吗?

出于某种原因,Spring Boot 无法绑定到克隆的阵列。我提出了 #12478,因为我认为这是 2.0 中新活页夹的回归。

编辑:此问题现已从 Spring Boot 2.0.1

开始修复