From 45965fb426bcf87854001cd3eef93cf34f1d8276 Mon Sep 17 00:00:00 2001 From: wangw <1594593906@qq.com> Date: Tue, 20 Jan 2026 18:25:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=82=E5=B8=B8=E4=BF=A1=E6=81=AF=E5=B0=9D?= =?UTF-8?q?=E8=AF=95=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/czg/utils/FunUtils.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/cash-common/cash-common-tools/src/main/java/com/czg/utils/FunUtils.java b/cash-common/cash-common-tools/src/main/java/com/czg/utils/FunUtils.java index fbe483164..88f6035bf 100644 --- a/cash-common/cash-common-tools/src/main/java/com/czg/utils/FunUtils.java +++ b/cash-common/cash-common-tools/src/main/java/com/czg/utils/FunUtils.java @@ -3,6 +3,7 @@ package com.czg.utils; import cn.hutool.core.lang.func.Func0; import cn.hutool.core.thread.ThreadUtil; import lombok.extern.slf4j.Slf4j; +import org.springframework.core.NestedExceptionUtils; import org.springframework.transaction.support.TransactionSynchronization; import org.springframework.transaction.support.TransactionSynchronizationManager; @@ -27,12 +28,17 @@ public class FunUtils { return value; } + public static void asyncSafeRunVoid(Runnable func, String... msg) { + ThreadUtil.execAsync(() -> safeRunVoid(func, msg)); + } + + public static void safeRunVoid(Runnable func, String... msg) { try { func.run(); } catch (Exception e) { - log.error("方法执行失败: {}", msg, e); - log.warn(msg.length > 0 ? msg[0] : "方法执行失败: {}", e.getMessage()); + String message = NestedExceptionUtils.getMostSpecificCause(e).getMessage(); + log.warn(msg.length > 0 ? msg[0] : "方法执行失败: {}", message); } } @@ -44,10 +50,6 @@ public class FunUtils { } } - public static void asyncSafeRunVoid(Runnable func, String... msg) { - ThreadUtil.execAsync(() -> safeRunVoid(func, msg)); - } - /** * 在事务提交后执行方法 * 异步 执行