diff --git a/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ScopeToolSyncService.java b/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ScopeToolSyncService.java index c8e2b49..7c0628f 100644 --- a/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ScopeToolSyncService.java +++ b/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ScopeToolSyncService.java @@ -35,7 +35,7 @@ import java.util.List; *
安全约束:只新增、不删除;作用域或工具不存在时记警告并跳过(不阻断启动)。
*/ @Component -@Order(2) // 必须在 ToolSyncService(@Order 缺省最低)之后,确保 tool 表已有记录 +@Order(2) // 必须在 ToolSyncService(@Order(1)) 之后:它负责把工具写进 tool 表 public class ScopeToolSyncService implements ApplicationRunner { private static final Logger log = LoggerFactory.getLogger(ScopeToolSyncService.class); diff --git a/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ToolSyncService.java b/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ToolSyncService.java index a9ba918..ff16336 100644 --- a/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ToolSyncService.java +++ b/xiaoqu-agent-service/src/main/java/me/iiv/agent/mcp/ToolSyncService.java @@ -7,6 +7,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; +import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; import java.lang.reflect.Method; @@ -20,6 +21,7 @@ import java.util.Objects; * 但保留管理员手动设置的 status,且不删除任何已有工具。 */ @Component +@Order(1) // 必须先于 ScopeToolSyncService(2):后者按 tool 表里的 name 建立作用域绑定 public class ToolSyncService implements ApplicationRunner { private static final Logger log = LoggerFactory.getLogger(ToolSyncService.class);