Invalid name="com.alibaba.dubbo.config.ProtocolConfig#0"

dubbo 2.6.7
springBoot2.1.6
使用@EnableDubbo启用dubbo, 配置dubbo.protocol.xxx相关属性,不设置dubbo.protocol.id,启动应用将会抛出异常. java.lang.IllegalStateException: Invalid name=“com.alibaba.dubbo.config.ProtocolConfig#0” contains illegal character, only digit, letter, ‘-’, ‘_’ or ‘.’ is legal
原因: 如果没有指定id属性,dubbo采用Spring 工具类BeanDefinitionReaderUtils.generateBeanName(builder.getRawBeanDefinition(), registry) 生成的bean名称带有#0 , 见com.alibaba.dubbo.config.spring.context.annotation.DubboConfigBindingRegistrar resolveSingleBeanName 方法,而 AbstractConfig中的正则会对该名称验证, Pattern.compile("[\-._0-9a-zA-Z]+") 导致程序启动失败

发布了225 篇原创文章 · 获赞 385 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qq_33709508/article/details/104937912
今日推荐