我正在尝试加载在构建期间编译并作为 .class 文件放置在类路径中的类。为此,我尝试了
GroovyClassLoader gos = new GroovyClassLoader();
gos.loadClass("className");
这将成功加载 java 代码中的类文件,但它使用 AppClassLoader 来加载这个而不是 GroovyClassLoader。
我了解 GroovyClassLoader 在内部使用 AppClassLoader 找到它。但有一个区别:
正如gos.parseClass(string)
将给我们一个从 GroovyClassLoader 解析的类。
在第二种情况(parseClass)中实例化类文件时,我们可以委托设置委托,但在第一种情况(loadClass)中,我们没有任何委托。
执行 loadClass 或通过 GroovyClassLoader 加载类文件的任何方式后如何设置委托。