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

Ophira ·
更新时间:2024-11-13
· 747 次阅读

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]+") 导致程序启动失败


作者:李昊轩的博客



com dubbo alibaba config

需要 登录 后方可回复, 如果你还没有账号请 注册新账号