diff --git a/designer-realize/src/main/java/com/fanruan/boot/init/DesignPreLoadComponent.java b/designer-realize/src/main/java/com/fanruan/boot/init/DesignPreLoadComponent.java index 575ed1cace..6773531811 100644 --- a/designer-realize/src/main/java/com/fanruan/boot/init/DesignPreLoadComponent.java +++ b/designer-realize/src/main/java/com/fanruan/boot/init/DesignPreLoadComponent.java @@ -45,6 +45,7 @@ import com.fr.locale.LocaleScope; import com.fr.locale.LocaleUtils; import com.fr.log.FineLoggerFactory; import com.fr.measure.DBMeterFactory; +import com.fr.plugin.manage.PluginManager; import com.fr.record.DefaultDBMeter; import com.fr.record.analyzer.EnableMetrics; import com.fr.record.analyzer.Metrics; @@ -56,6 +57,7 @@ import com.fr.stable.bridge.StableFactory; import com.fr.stable.fun.WebLocaleProvider; import com.fr.stable.plugin.ExtraClassManagerProvider; import com.fr.stable.project.ProjectConstants; +import com.fr.stable.resource.ResourceLoader; import com.fr.stable.xml.StableXMLUtils; import com.fr.start.DesignerProcessType; import com.fr.start.module.StartupArgs; @@ -216,6 +218,10 @@ public class DesignPreLoadComponent { } return Class.forName(className, true, urlClassLoader); }); + + ClassFactory.getInstance().addFinder(className -> ResourceLoader.classForName(className)); + ClassFactory.getInstance().addFinder(className -> Class.forName(className, true, PluginManager.getController().getClass().getClassLoader())); + }