From 039a686f90ab9b3307b5dfc11e3f1b823bf5b4a7 Mon Sep 17 00:00:00 2001 From: LamGC Date: Sun, 22 Nov 2020 20:19:27 +0800 Subject: [PATCH] =?UTF-8?q?[Change]=20Core=20=E4=B8=BA=20FrameworkManager?= =?UTF-8?q?=20=E5=86=85=E7=9A=84=20DevelopmentPluginLoader=20=E8=A1=A5?= =?UTF-8?q?=E5=85=85=E5=AF=B9=E7=B1=BB=E5=8A=A0=E8=BD=BD=E7=AD=96=E7=95=A5?= =?UTF-8?q?=E7=9A=84=E8=AE=BE=E7=BD=AE;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [Change] FrameworkManager 为 DevelopmentPluginLoader 重写 'createPluginClassLoader' 方法, 以提供 ClassLoadingStrategy 策略; --- .../net/lamgc/cgj/bot/framework/FrameworkManager.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ContentGrabbingJi-core/src/main/java/net/lamgc/cgj/bot/framework/FrameworkManager.java b/ContentGrabbingJi-core/src/main/java/net/lamgc/cgj/bot/framework/FrameworkManager.java index 8175fe3..23d087a 100644 --- a/ContentGrabbingJi-core/src/main/java/net/lamgc/cgj/bot/framework/FrameworkManager.java +++ b/ContentGrabbingJi-core/src/main/java/net/lamgc/cgj/bot/framework/FrameworkManager.java @@ -22,6 +22,7 @@ import net.lamgc.cgj.bot.event.EventExecutor; import org.pf4j.*; import java.io.File; +import java.nio.file.Path; /** * 框架管理器. @@ -43,7 +44,13 @@ public class FrameworkManager extends JarPluginManager { @Override protected PluginLoader createPluginLoader() { return new CompoundPluginLoader() - .add(new DevelopmentPluginLoader(this), this::isDevelopment) + .add(new DevelopmentPluginLoader(this) { + @Override + protected PluginClassLoader createPluginClassLoader(Path pluginPath, PluginDescriptor pluginDescriptor) { + return new PluginClassLoader(FrameworkManager.this, pluginDescriptor, + getClass().getClassLoader(), ClassLoadingStrategy.ADP); + } + }, this::isDevelopment) .add(new JarFrameworkLoader(this), this::isNotDevelopment); }