java clazz.getAnnotation(类注解类)在自定义类加载器中为空

oewdyzsn  于 2023-02-14  发布在  Java
关注(0)|答案(1)|浏览(277)

我尝试从自定义ClassLoader获取注解,但遇到了一些问题。

ClassPool classPool = ClassPool.getDefault(); 
Loader cl = new Loader(classPool); 
c = cl.loadClass(className); 
c.getAnnotation(Annotation.class)

null,但c.getAnnotations()不为空。

euoag5mw

euoag5mw1#

感谢您提供的所有细节,我无法使用c.getAnnotation(cl.loadClass(Annotation.class.getName())),因为我发送了一个生成的类作为参数,并发送了PowerMock的另一个对象来检索注解,例如element.getAnnotation(classAnnotation.class)。实际上,我的目标是在运行时向已经加载的类添加注解,我无法执行c.toClass(),因为它已经加载。这就是为什么我想创建一个自定义类加载器,其中包含带有新注解的相同对象。
多谢了

相关问题