fix(agent): add url class loader to support load external modules

This commit is contained in:
2026-05-02 00:36:34 +08:00
parent db18c818ac
commit 2b575df3f9

View File

@@ -5,15 +5,22 @@ import org.reflections.scanners.Scanners
import org.reflections.util.ConfigurationBuilder
import java.lang.reflect.Method
import java.net.URL
import java.net.URLClassLoader
class AgentRegisterContext(urls: List<URL>) {
private val classLoader = URLClassLoader(
urls.toTypedArray(),
Thread.currentThread().contextClassLoader
)
val reflections: Reflections = Reflections(
ConfigurationBuilder().setScanners(
Scanners.FieldsAnnotated,
Scanners.SubTypes,
Scanners.MethodsAnnotated,
Scanners.TypesAnnotated
).setUrls(urls)
).setUrls(urls).addClassLoaders(classLoader)
)
val capabilityFactoryContext: CapabilityFactoryContext = CapabilityFactoryContext()