Spring Cloud 疑难杂症之 CompletableFuture 与 Openfeign 一起使用的问题

news/2024/11/8 17:05:32/

CompletableFuture 与 Openfeign 一起使用的问题

    • 问题描述
    • 问题解决

问题描述

  • 直接错误信息
    Could not find class [org.springframework.boot.autoconfigure.condition.OnPropertyCondition]

java.util.concurrent.CompletionException: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration c lass [org.springframework.cloud.loadbalancer.annotation.LoadBalancerClientConfiguration]; nested exception is java.lang.IllegalArgumentException: Could not find class [org.springframework.boot.autoconfigure.condition.OnPropertyCondition]
at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314) ~[na:na]
at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:319) ~[na:na]
at java.base/java.util.concurrent.CompletableFuture A s y n c R u n . r u n ( C o m p l e t a b l e F u t u r e . j a v a : 1739 ) [ n a : n a ] a t j a v a . b a s e / j a v a . u t i l . c o n c u r r e n t . C o m p l e t a b l e F u t u r e AsyncRun.run(CompletableFuture.java:1739) ~[na:na] at java.base/java.util.concurrent.CompletableFuture AsyncRun.run(CompletableFuture.java:1739) [na:na]atjava.base/java.util.concurrent.CompletableFutureAsyncRun.exec(CompletableFuture.java:1728) ~[na:na]
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) ~[na:na]
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020) ~[na:na]
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656) ~[na:na]
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594) ~[na:na]
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) ~[na:na]
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [org.springframework.cloud .loadbalancer.annotation.LoadBalancerClientConfiguration]; nested exception is java.lang.IllegalArgumentException: Could not find class [ org.springframework.boot.autoconfigure.condition.OnPropertyCondition]

  • 直接上伪代码
    CompletableFuture.runAsync(() -> {// feign 调用
    });
    

问题解决

这个问题其实由来已久,Spring Cloud 官方对其已有说明。
官方认为此bug优先级并不高,官方不会花精力解决;但是对社区是开放的,社区开发者可以提PR。
目前有开发者提出了一些折衷的解决方案。

  1. 由于此问题与 ForkJoin 线程池底层实现有关,可以为 CompletableFuture 指定自定义线程池
    CompletableFuture.runAsync(() -> {// feign 调用}, customThreadPool);

http://www.ppmy.cn/news/590616.html

相关文章

SSMP整合案例(7) MybatisPlus快速service业务层开发

上文 SSMP整合案例(6) 业务service层逻辑编写我们创建并编写了service业务层代码 但是 这样一个一个去写 确实是有点麻烦 重复性工作 但其实这个已经有人帮我们考虑好了 MP就帮我们做了一个 service快捷开发的方式 我们在项目中的service包下创建一个接口 叫 IBookService 其实…

大势智慧软硬件技术答疑第五期

1.控制点误差表达到多少就可以? 答:水平和高程误差在0.01左右就可以,图示精度是满足的。 2.三维影像有颜色,为什么生成的是二维影像是黑色的? 答:使用dasviewer的工具-输出正射图再试试。 3.最新模方对ps版…

dnf手游服务器维护时效,dnf手游延期最新公告 dnf手游延期正真原因

dnf手游延期的最新公告,dnf手游延期的真实原因到底是什么,网上消息纷飞玩家到底相信谁,本期小编就为大家介绍一下dnf手游跳票的原因猜想集合,希望对于各位有所帮助。 腾讯dnf手游上线延期最新公告 腾讯旗下的地下城与勇士工作室在…

全网最新超详细的【Axure】Axure RP 10的下载、安装、中文字体、授权【2023年】

文章目录 1. 文章引言2. 下载Axure103. 安装Axure104. Axure10中文5. 解决axure弹框更新的问题6. 重要备注7. Axure10授权 1. 文章引言 最近在学习原型图,针对画原型图的工具,反复对比墨刀、Axure、xiaopiu后,最终选择了Axure。 接下来&…

DNF HTML

<!DOCTYPE html> <html> <head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><title>◆&#xfe64;艾尚&#xfe65;//CheatEngine \\ 唯一官方资料网盘 ℡&#xff1a;dnfce.cccpan.com</titl…

联想绿色驱动,绿色时钟屏保Fliqlo,强力卸载工具HiBit Uninstaller 便携绿色版

联想绿色驱动 联想绿色驱动2.7版&#xff0c;去除了后台服务与广告程序 下载地址&#xff1a; https://zhaooolee.cowtransfer.com/s/34189f7d89c143 绿色时钟屏保Fliqlo 极简主义时钟屏保Fliqlo是一款简约的个性化软件。 它是一个时钟屏保&#xff0c;可让您将台式机或笔记本电…

电脑游戏业编年史之七──新老之争

谁也不知道Microsoft的BillGates先生是哪一年看中电脑游戏业的&#xff0c;或许本来就是早有预谋的事情&#xff0c;但让我感慨的是──很多产业巨人并不留意的电脑游戏业&#xff0c;在中国被认为小儿科的电脑游戏业&#xff0c;在Bill Gates心中却是个称霸全球IT业的关键&…

2004手机游戏年终点评

转自&#xff1a; http://blog.smth.org/pc/pccon.php?id1517&nid113597&sall 产业/市场  如果说在一年前&#xff0c;手机游戏给大多数人的第一印象还是贪吃蛇、猜数字的话&#xff0c;那么现在&#xff0c;任何一个对IT或对游戏稍有关心的人&#xff0c;都对这一年…