From da3307a7b799744cb68d78e54cc497ebfee33620 Mon Sep 17 00:00:00 2001 From: sh Date: Mon, 1 Dec 2025 12:20:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=8D=E5=BD=B1=E5=93=8D?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=8E=AF=E5=A2=83=E5=90=AF=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../framework/config/ClassloaderConfig.java | 68 +++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ClassloaderConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ClassloaderConfig.java index 114c468..ecfa058 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ClassloaderConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ClassloaderConfig.java @@ -3,37 +3,37 @@ package com.ruoyi.framework.config; import org.springframework.context.annotation.Configuration; import javax.annotation.PostConstruct; -@Configuration -public class ClassloaderConfig { - - @PostConstruct - public void bindAppClassLoader() { - ClassLoader appClassLoader = this.getClass().getClassLoader(); - Thread.currentThread().setContextClassLoader(appClassLoader); - System.out.println("已强制绑定线程类加载器:" + appClassLoader); - - // 重点:主动加载 Tomcat WebSocket 核心类,确保类加载器锁定 - try { - // Tomcat WebSocket 容器类(冲突核心类) - appClassLoader.loadClass("org.apache.tomcat.websocket.server.WsServerContainer"); - // Tomcat WebSocket 初始化类 - appClassLoader.loadClass("org.apache.tomcat.websocket.server.WsServletContainerInitializer"); - // Spring WebSocket 适配类 - appClassLoader.loadClass("org.springframework.web.socket.server.standard.ServerEndpointExporter"); - // Jakarta WebSocket API 类(应用内依赖) - appClassLoader.loadClass("jakarta.websocket.server.ServerContainer"); - System.out.println("WebSocket 核心类已通过应用类加载器锁定,无冲突"); - } catch (ClassNotFoundException e) { - System.err.println("应用类加载器未找到 WebSocket 依赖,检查 spring-boot-starter-websocket 是否正常引入:" + e.getMessage()); - throw new RuntimeException("WebSocket 依赖缺失", e); - } - - // 验证 Validator 类加载 - try { - appClassLoader.loadClass("jakarta.validation.Validator"); - System.out.println("Jakarta Validation API 加载成功"); - } catch (ClassNotFoundException e) { - System.err.println("Validator 依赖缺失:" + e.getMessage()); - } - } -} \ No newline at end of file +//@Configuration +//public class ClassloaderConfig { +// +// @PostConstruct +// public void bindAppClassLoader() { +// ClassLoader appClassLoader = this.getClass().getClassLoader(); +// Thread.currentThread().setContextClassLoader(appClassLoader); +// System.out.println("已强制绑定线程类加载器:" + appClassLoader); +// +// // 重点:主动加载 Tomcat WebSocket 核心类,确保类加载器锁定 +// try { +// // Tomcat WebSocket 容器类(冲突核心类) +// appClassLoader.loadClass("org.apache.tomcat.websocket.server.WsServerContainer"); +// // Tomcat WebSocket 初始化类 +// appClassLoader.loadClass("org.apache.tomcat.websocket.server.WsServletContainerInitializer"); +// // Spring WebSocket 适配类 +// appClassLoader.loadClass("org.springframework.web.socket.server.standard.ServerEndpointExporter"); +// // Jakarta WebSocket API 类(应用内依赖) +// appClassLoader.loadClass("jakarta.websocket.server.ServerContainer"); +// System.out.println("WebSocket 核心类已通过应用类加载器锁定,无冲突"); +// } catch (ClassNotFoundException e) { +// System.err.println("应用类加载器未找到 WebSocket 依赖,检查 spring-boot-starter-websocket 是否正常引入:" + e.getMessage()); +// throw new RuntimeException("WebSocket 依赖缺失", e); +// } +// +// // 验证 Validator 类加载 +// try { +// appClassLoader.loadClass("jakarta.validation.Validator"); +// System.out.println("Jakarta Validation API 加载成功"); +// } catch (ClassNotFoundException e) { +// System.err.println("Validator 依赖缺失:" + e.getMessage()); +// } +// } +//} \ No newline at end of file