我想问一下 UrlClassLoaders。我编写了一个运行良好的主 .jar 文件。现在我想让它能够从它的一个文件夹中加载插件。我一直写到它在文件夹中找到 .jar 文件,可以在其中列出它们的类(它们的名称、路径)。问题是当我要求他找到该类(以创建它的实例)时,他们不会找到它从我的主 jar 文件继承的类,如下所示:
IN MAIN JAR:
-class Expansion { ... }
In a plugin jar:
-class ExpansionA extends MainJar.Expansion { ... }
因此,当我要求 UrlClassLoader 解析“ ExpansionA ”类时,它将在插件 jar 中搜索“ Expansion ”类而不是 MainJar,并且插件 jar 中没有“ Expansion ”类,因为它从 MainJar 继承为资源库...并在defineClass方法时引发 NoDefFoundForClassError 异常。我怎样才能告诉他也检查 MainJar 中的课程?(它不仅是关于 1 个类,而且我希望插件能够从 MainJar 继承任何类)。你能帮我吗?