dubbo连接zookeeper报Exception in thread “main“ java.lang.IllegalStateException: zookeeper not connected

修改办法

方法一:适用于xml配置dubbo的方案。

    <dubbo:registry  id="registry1" address="zookeeper://localhost:2181" timeout="25000"/>

或者

 <dubbo:config-center timeout="25000"/>

方法二:适用于api配置dubbo的方案。

    private static void startWithBootstrap() {
        ServiceConfig<DemoServiceImpl> serviceServiceConfig = new ServiceConfig<>();
        serviceServiceConfig.setInterface(DemoService.class);
        serviceServiceConfig.setRef(new DemoServiceImpl());
        DubboBootstrap bootstrap = DubboBootstrap.getInstance();
        bootstrap.application(new ApplicationConfig("dubbo-one-api-provider"))
                .registry(new RegistryConfig("zookeeper://localhost:2181?timeout=25000"))
                .service(serviceServiceConfig)
                .start()
                .await();

    }

    private static void startWithExport() throws InterruptedException {
        ServiceConfig<DemoServiceImpl> service = new ServiceConfig<>();
        service.setInterface(DemoService.class);
        service.setRef(new DemoServiceImpl());
        service.setApplication(new ApplicationConfig("dubbo-demo-api-provider"));
        service.setRegistry(new RegistryConfig("zookeeper://localhost?timeout=25000"));
        service.export();

        System.out.println("dubbo service started");
        new CountDownLatch(1).await();
    }

方法三:适用于注解配置的。

    @Configuration
    @EnableDubbo(scanBasePackages = "com.rsw")
    @PropertySource("classpath:/spring/dubbo_provider.properties")
    static class ProviderConfiguration {
        @Bean
        public RegistryConfig registryConfig() {
            RegistryConfig registryConfig = new RegistryConfig();
            registryConfig.setAddress("zookeeper://localhost:2181");
            return registryConfig;
        }
    }

另外一种情况就是zookeeper的版本问题了,可以在pom文件中移除内置的zookeeper,然后在手动添加合适版本的zookeeper依赖包了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值