zk的jar包冲突:java.lang.NoSuchMethodError: org.apache.zookeeper.ZooKeeper.getChildren(Ljava/lang/String;

本文记录了一次ZooKeeper与Spring框架集成时遇到的错误案例,详细解析了因jar包版本冲突导致的NoSuchMethodError异常,并给出了可能的解决思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[19 15:20:07,086 INFO ] org.apache.zookeeper.ClientCnxn - EventThread shut down
15:20:11.127 [main] INFO  o.s.d.e.c.TransportClientFactoryBean - adding transport node : 10.155.20.151:9300
[19 15:20:12,556 ERROR] com.koolearn.framework.aries.datasource.route.ZookeeperAdapter - No such instance name: crm
java.lang.NoSuchMethodError: org.apache.zookeeper.ZooKeeper.getChildren(Ljava/lang/String;ZLorg/apache/zookeeper/data/Stat;)Ljava/util/List;
        at com.koolearn.framework.aries.datasource.descriptor.ZookeeperDbDescriptor.getDbInstance(ZookeeperDbDescriptor.java:56)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.initDbInstance(ConnectionPoolManager.java:48)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getInstance(ConnectionPoolManager.java:162)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getReaderDataSource(ConnectionPoolManager.java:149)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getReader(ConnectionPoolManager.java:129)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getReader(ConnectionPoolManager.java:119)
        at com.koolearn.framework.aries.datasource.route.ZookeeperAdapter.getReadConnection(ZookeeperAdapter.java:69)
        at com.koolearn.framework.aries.datasource.route.KooDataSourceFactory.getDataSource(KooDataSourceFactory.java:44)
        at com.koolearn.framework.aries.provider.AbstractDataAccessProvider.createDataAccess(AbstractDataAccessProvider.java:36)
        at com.koolearn.framework.aries.provider.AriesDataAccessProvider.createDataAccess(AriesDataAccessProvider.java:32)
        at com.koolearn.framework.aries.core.AriesDaoFactoryBean.createDAO(AriesDaoFactoryBean.java:69)
        at com.koolearn.framework.aries.core.AriesDaoFactoryBean.getObject(AriesDaoFactoryBean.java:58)
        at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:142)
        at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:102)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1442)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:305)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByName(AbstractAutowireCapableBeanFactory.java:1136)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1360)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1118)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:609)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:469)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
        at com.alibaba.dubbo.container.spring.SpringContainer.start(SpringContainer.java:50)
        at com.alibaba.dubbo.container.Main.main(Main.java:80)
[19 15:20:12,570 ERROR] com.koolearn.framework.aries.datasource.route.ZookeeperAdapter - No such instance name: crm
java.lang.NoSuchMethodError: org.apache.zookeeper.ZooKeeper.getChildren(Ljava/lang/String;ZLorg/apache/zookeeper/data/Stat;)Ljava/util/List;
        at com.koolearn.framework.aries.datasource.descriptor.ZookeeperDbDescriptor.getDbInstance(ZookeeperDbDescriptor.java:56)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.initDbInstance(ConnectionPoolManager.java:48)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getInstance(ConnectionPoolManager.java:162)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getWriterDataSource(ConnectionPoolManager.java:107)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getWriter(ConnectionPoolManager.java:89)
        at com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager.getWriter(ConnectionPoolManager.java:82)
        at com.koolearn.framework.aries.datasource.route.ZookeeperAdapter.getWriteConnection(ZookeeperAdapter.java:73)
        at com.koolearn.framework.aries.datasource.route.KooDataSourceFactory.getDataSource(KooDataSourceFactory.java:46)
        at com.koolearn.framework.aries.provider.AbstractDataAccessProvider.createDataAccess(AbstractDataAccessProvider.java:36)
        at com.koolearn.framework.aries.provider.AriesDataAccessProvider.createDataAccess(AriesDataAccessProvider.java:32)
        at com.koolearn.framework.aries.core.AriesDaoFactoryBean.createDAO(AriesDaoFactoryBean.java:69)
        at com.koolearn.framework.aries.core.AriesDaoFactoryBean.getObject(AriesDaoFactoryBean.java:58)
        at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:142)
        at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:102)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1442)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:305)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByName(AbstractAutowireCapableBeanFactory.java:1136)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
        at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1360)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1118)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:609)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:469)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
        at com.alibaba.dubbo.container.spring.SpringContainer.start(SpringContainer.java:50)
        at com.alibaba.dubbo.container.Main.main(Main.java:80)
[19 15:20:12,574 ERROR] com.koolearn.framework.aries.datasource.route.ZookeeperAdapter - com.koolearn.framework.aries.datasource.route.pool.ConnectionPoolManager instance: crm pattern: 

java.lang.NullPointerException


!!!!!异常原因是zk的jar包冲突

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值