玩Dubbo遇到 java.lang.NoClassDefFoundError: org/apache/curator/RetryPolicy异常
2019-01-22 20:16
2755 查看
目录
开门见山
对着Dubbo官网玩,并使用ZooKeeper作为注册中心,在使用Maven 导入包时要注意了,我导入的 dubbo 版本是2.6.5(github中的),在Dubbo官方中的ZooKeeper的curator 客户端给出的依赖版本是1.1.10,加入依赖并启动服务提供者,就开启报错模式了
报错原因
在一番折腾后,发现问题就出在curator这个依赖中,版本号太低了,到Maven 仓库中找新一版的。
<!-- Dubbo 官网介绍ZooKeeper作为注册中心给出的 curator 版本 --> <dependency> <groupId>com.netflix.curator</groupId> <artifactId>curator-framework</artifactId> <version>1.1.10</version> </dependency>
解决方案
Dubbo最新稳定版都 2.6.5 了, curator 才 1.1.10,这么低的版本不报错都没理由了,赶紧换个最新 4.0.1版本,再启动服务提供者,完美解决报错
<!-- 修改后的 curator 依赖 --> <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-framework</artifactId> <version>4.0.1</version> </dependency>
报错代码
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/curator/RetryPolicy at com.alibaba.dubbo.remoting.zookeeper.curator.CuratorZookeeperTransporter.connect(CuratorZookeeperTransporter.java:27) at com.alibaba.dubbo.remoting.zookeeper.ZookeeperTransporter$Adaptive.connect(ZookeeperTransporter$Adaptive.java) at com.alibaba.dubbo.registry.zookeeper.ZookeeperRegistry.<init>(ZookeeperRegistry.java:69) at com.alibaba.dubbo.registry.zookeeper.ZookeeperRegistryFactory.createRegistry(ZookeeperRegistryFactory.java:38) at com.alibaba.dubbo.registry.support.AbstractRegistryFactory.getRegistry(AbstractRegistryFactory.java:96) at com.alibaba.dubbo.registry.RegistryFactory$Adaptive.getRegistry(RegistryFactory$Adaptive.java) at com.alibaba.dubbo.registry.integration.RegistryProtocol.getRegistry(RegistryProtocol.java:203) at com.alibaba.dubbo.registry.integration.RegistryProtocol.export(RegistryProtocol.java:137) at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper.export(ProtocolFilterWrapper.java:98) at com.alibaba.dubbo.rpc.protocol.ProtocolListenerWrapper.export(ProtocolListenerWrapper.java:55) at com.alibaba.dubbo.qos.protocol.QosProtocolWrapper.export(QosProtocolWrapper.java:60) at com.alibaba.dubbo.rpc.Protocol$Adaptive.export(Protocol$Adaptive.java) at com.alibaba.dubbo.config.ServiceConfig.doExportUrlsFor1Protocol(ServiceConfig.java:513) at com.alibaba.dubbo.config.ServiceConfig.doExportUrls(ServiceConfig.java:358) at com.alibaba.dubbo.config.ServiceConfig.doExport(ServiceConfig.java:317) at com.alibaba.dubbo.config.ServiceConfig.export(ServiceConfig.java:216) at com.alibaba.dubbo.config.spring.ServiceBean.export(ServiceBean.java:291) at com.alibaba.dubbo.config.spring.ServiceBean.onApplicationEvent(ServiceBean.java:131) at com.alibaba.dubbo.config.spring.ServiceBean.onApplicationEvent(ServiceBean.java:53) at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:393) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:347) at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:883) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83) at com.zlk.start.Provider.main(Provider.java:10) Caused by: java.lang.ClassNotFoundException: org.apache.curator.RetryPolicy at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 29 more
相关文章推荐
- 配置Struts2 遇到的两个异常 java.lang.ClassNotFoundException / org.apache.catalina.LifecycleException
- Java_异常_01_org.apache.commons.lang.exception.NestableRuntimeException
- tomcat启动Java.Lang.NoClassDefFoundError: Org/Apache/Commons/Logging/LogFactory异常
- Java异常解决总结001-org.apache.jasper.JasperException: java.lang.IllegalStateException: No output fold
- 在用StrutsMenu时,报异常java.lang.NoClassDefFoundError: org/apache/commons/collections/map/LinkedMap
- java.lang.NullPointerException at org.apache.jsp.**_jsp.jspInit(index_jsp.java)异常 解决方案
- SSH框架搭建遇到的问题-----java.lang.NoClassDefFoundError: org/apache/commons/collections/map/LRUMap
- org.apache.jasper.JasperException: java.lang.NullPointerException一个神奇的异常
- maven使用mvn命令创建项目异常java.lang.NoClassDefFoundError: org/apache/commons/collections/ExtendedProperties
- JSP页面中出现的一个异常:org.apache.jasper.JasperException: java.lang.NullPointerException
- 一个异常org.apache.jasper.JasperException: java.lang.IllegalStateException: No output folder:的解决
- SSH框架搭建遇到的问题-----java.lang.NoClassDefFoundError: org/apache/commons/collections/map/LRUMap
- struts 异常之java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAnd
- 云计算学习笔记---异常处理---hadoop问题处理ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.lang.NullPoin
- 异常:java.lang.ClassNotFoundException: org.apache.commons.collections.map.ListOrderedMap
- Java调用hdfs出现java.lang.VerifyError: class org.apache.hadoop.hdfs.protocol.proto异常
- jetty、tomcat启动发生异常 java.lang.NoClassDefFoundError: org.apache.jasper.el.ELContextImpl
- java.lang.NoClassDefFoundError:org/apache/commons/lang/exception/NestableRuntimeException 异常的处理
- 关于Spring的异常:java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
- 异常记录与处理 - java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory