From bedfa07a8a01b68436f1f1632d6007ddad51d2c2 Mon Sep 17 00:00:00 2001 From: Looly Date: Fri, 18 Apr 2025 12:23:23 +0800 Subject: [PATCH] =?UTF-8?q?ServiceLoader.load=E6=8D=A2=E6=88=90SpiUtil.loa?= =?UTF-8?q?dList?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/hutool/v7/ai/AIServiceFactory.java | 5 +++-- .../main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java | 6 ++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java b/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java index 0221feccb..c17a2d857 100644 --- a/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java +++ b/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java @@ -19,9 +19,10 @@ package cn.hutool.v7.ai; import cn.hutool.v7.ai.core.AIConfig; import cn.hutool.v7.ai.core.AIService; import cn.hutool.v7.ai.core.AIServiceProvider; +import cn.hutool.v7.core.spi.ServiceLoader; +import cn.hutool.v7.core.spi.SpiUtil; import java.util.Map; -import java.util.ServiceLoader; import java.util.concurrent.ConcurrentHashMap; /** @@ -36,7 +37,7 @@ public class AIServiceFactory { // 加载所有 AIModelProvider 实现类 static { - final ServiceLoader loader = ServiceLoader.load(AIServiceProvider.class); + final ServiceLoader loader = SpiUtil.loadList(AIServiceProvider.class); for (final AIServiceProvider provider : loader) { providers.put(provider.getServiceName().toLowerCase(), provider); } diff --git a/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java b/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java index afb2b4f49..da93fdb26 100644 --- a/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java +++ b/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java @@ -16,8 +16,10 @@ package cn.hutool.v7.ai.core; +import cn.hutool.v7.core.spi.ServiceLoader; +import cn.hutool.v7.core.spi.SpiUtil; + import java.util.Map; -import java.util.ServiceLoader; import java.util.concurrent.ConcurrentHashMap; /** @@ -32,7 +34,7 @@ public class AIConfigRegistry { // 加载所有 AIConfig 实现类 static { - final ServiceLoader loader = ServiceLoader.load(AIConfig.class); + final ServiceLoader loader = SpiUtil.loadList(AIConfig.class); for (final AIConfig config : loader) { configClasses.put(config.getModelName().toLowerCase(), config.getClass()); }