最近将几个服务注册到网关,需要增加zookeeper的jar包,有个服务升级之后一直报如下的错误:

Description:An attempt was made to call a method that does not exist. The attempt was made from the following location:org.apache.curator.framework.listen.ListenerContainer.addListener(ListenerContainer.java:40)The following method did not exist:com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor()Lcom/google/common/util/concurrent/ListeningExecutorService;The calling method's class, org.apache.curator.framework.listen.ListenerContainer, was loaded from the following location:jar:file:/Users/liuqingchao/.m2/repository/org/apache/curator/curator-framework/2.9.1/curator-framework-2.9.1.jar!/org/apache/curator/framework/listen/ListenerContainer.classThe called method's class, com.google.common.util.concurrent.MoreExecutors, is available from the following locations:jar:file:/Users/liuqingchao/.m2/repository/com/google/guava/guava/26.0-android/guava-26.0-android.jar!/com/google/common/util/concurrent/MoreExecutors.classThe called method's class hierarchy was loaded from the following locations:com.google.common.util.concurrent.MoreExecutors: file:/Users/liuqingchao/.m2/repository/com/google/guava/guava/26.0-android/guava-26.0-android.jarAction:Correct the classpath of your application so that it contains compatible versions of the classes org.apache.curator.framework.listen.ListenerContainer and com.google.common.util.concurrent.MoreExecutors

看起来这里问题是找一个类没找到,根据提示是在:curator-framework/2.9.1/curator-framework-2.9.1.jar!/org/apache/curator/framework/listen/这个路径下找类ListenerContainer.class,没找到,然后后面提示com/google/guava/guava/26.0-android/guava-26.0-android里有这个类,此时试图修改exclude等来将类定向到guava,或者排除掉curator2.9.1,但是均已失败告终。

之后将curator升级到4.0.1,还是不解决问题,有些基础包还是依赖2.9.1,所以必须手动将其都升到4.0.1。

同时,根据同事的提示,将guava版本降低到20:

            <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>20.0</version></dependency>

仍然解决不了问题。

其实上面的错误提示信息是有误导的,我们不应该让curator去使用guava里的类,而应该想办法将curator从2.9.1全部升级到4.0.1版本。

尝试了很多次,发现只要在zookeeper-discovery-starter前指定org.apache.curator的版本号就可以了。完整代码:

    <dependency><groupId>org.apache.curator</groupId><artifactId>curator-framework</artifactId><version>4.0.1</version></dependency><dependency><groupId>org.apache.curator</groupId><artifactId>curator-recipes</artifactId><version>4.0.1</version></dependency><dependency><groupId>org.apache.curator</groupId><artifactId>curator-client</artifactId><version>4.0.1</version></dependency><dependency><groupId>com.****</groupId><artifactId>zookeeper-discovery-starter</artifactId><version>spring-2.x-curator-4.0.1-1.1.RELEASE</version></dependency>

这种问题很多时候是试出来的,记录一下,后面遇到类似的就可以参考了。

org.apache.curator.framework.listen.ListenerContainer.addListener的解决方法相关推荐

  1. IDEA报错解决:java.lang.NoClassDefFoundError: org/apache/curator/framework/CuratorFrameworkFactory

    利用dubbo+zookeeper进行服务注册的时候报以下错误信息: java.lang.NoClassDefFoundError: org/apache/curator/framework/Cura ...

  2. 启动异常:java.lang.NoClassDefFoundError: org/apache/curator/framework/CuratorFrameworkFactory 解决方法

    Springboot:Zookeeper整合Dubbo报错: java.lang.NoClassDefFoundError: org/apache/curator/framework/CuratorF ...

  3. apache服务出现Forbidden 403问题的解决方法总结

    这篇文章主要介绍了apache服务出现Forbidden 403问题的解决方法总结,需要的朋友可以参考下 在配置Linux的 Apache服务时,经常会遇到http403错误,我今天配置测试时也出现了 ...

  4. XAMPP中Apache因为端口原因不能启动的解决方法

    XAMPP中Apache因为端口原因不能启动的解决方法 参考文章: (1)XAMPP中Apache因为端口原因不能启动的解决方法 (2)https://www.cnblogs.com/corvoh/p ...

  5. 服务器启动成功网页无法访问,apache启动后无法访问网页的解决方法

    apache启动后无法访问网页的解决方法 发布时间:2021-01-27 11:31:08 来源:亿速云 阅读:146 作者:小新 小编给大家分享一下apache启动后无法访问网页的解决方法,希望大家 ...

  6. 403 Forbidden You don‘t have permission to access this resource. Apache Server at IP Port 80的解决方法

    ECS下载站Forbidden You don't have permission to access this resource. Apache Server at IP Port 80的解决方法 ...

  7. 服务器系统无法安装net3.5,Windows Server 2012无法安装.NET Framework 3.5.1的解决方法

    在Windows Server 2012 R2安装net只能通过服务器角色管理安装,但在安装时需要安装源,通常系统中是没有安装源的. 这里我们可以通过修改安装的更新源来进行解决. 原因分析:由于在Wi ...

  8. Caused by: java.lang.NoClassDefFoundError: org/apache/curator/framework/CuratorFrameworkFactory

    springboot整合dubbo,apache的报错: 添加依赖: <dependency><groupId>org.apache.curator</groupId&g ...

  9. mantis apache mysql_软件测试(软件安装:php+mysql+apache+mantis过程遇到的问题以及解决方法)...

    实验环境:  Windows 7    64位操作系统 浏览器版本: Mozilla Firefox  41.0.0.5378 一.PHP的安装 ① 版本:   php-5.4.45-Win32-VC ...

最新文章

  1. UINavigationController技巧一——修改返回按钮的标题
  2. 来!一起搭建个永久运行的个人服务器吧!
  3. 脑细胞膜等效神经网路简单分类实例
  4. Delphi编程实现是否开启“平滑屏幕字体边缘“
  5. linux如何生成so文件,新人问个问题,莫见笑:关于如何生成so文件,大家多多捧场啊...
  6. 修改element-ui源码使日期范围date-picker支持年范围选择
  7. 支持HTML5 SqlLite的AndroidApp
  8. 数据分析从入门到进阶,35本包邮送到家
  9. 阶段5 3.微服务项目【学成在线】_day03 CMS页面管理开发_09-修改页面-服务端-接口开发...
  10. python三大神器之fabric
  11. 系统服务器软件 服务器操作软件,服务器操作系统和服务器软件
  12. 【雅思大作文考官范文】——第四篇: 'power of advertising' essay
  13. 第三方支付线上产品分析
  14. 同一局域网、不同局域网共享和连接打印机设置
  15. 九宫格一条线连起来_9个圆圈用4条线连起来-九个点用四条线连接-数学-霍甲心同学...
  16. 电脑怎样文字转语音?给文字配音的方法其实有很多种
  17. python计算ks值 代码_python画KS图,求KS值
  18. ids for this class must be manually assigned before calling save(): com.jia.enity.Book;
  19. 轻聊 - 聊天室的设计思路
  20. 沈询 java进阶,7细品这杯香浓的咖啡 阿里中间件高级专家沈询的JAVA之旅

热门文章

  1. Single image rain and snow removal via guided L0 smoothing filter
  2. (转)Word2016怎么和mathtype兼容
  3. 6款电脑必备的常用软件(办公/高效/小白入门)
  4. Google Glass——个人移动设备的技术革新
  5. RK3399平台开发系列讲解(电源管理篇)11.6、wakelock详解
  6. 什么是网盾游戏盾?游戏盾的原理和优势,小白必看!!
  7. QT练习Http通信代码下载器
  8. Webots+tesla+ROS2
  9. 脉冲雷达数据采集基础
  10. 无法量化的分析指标体系构建思路