gpt4 book ai didi

java class.getAnnotation(Class class) 返回 null

转载 作者:太空宇宙 更新时间:2023-11-04 10:21:34 26 4
gpt4 key购买 nike

我写了一个注释:

@Documented
@Retention(RUNTIME)
@Target(TYPE)
/**
* @author christian
*
*/
public @interface HeraklesObject {

}

我在 osgi 环境(eclipseoxygen 和 tycho)中捆绑使用它。在另一个包(具体来说是一个测试片段)中,我检查第一个包中的类是否有此注释,使用:

class.getAnnotation(HeraklesObject.class)

我确信查询的类有这个注释,但我总是得到空结果。

保留策略对我来说似乎是正确的,但我不确定是否存在类加载器问题,并且我不知道如何检查它。或者您还看到其他原因吗?谢谢克里斯蒂安

最佳答案

尝试使用

@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.TYPE })

同样来自How to get class annotation in java?

使用

Class newClass = X.class;

for (Annotation annotation : newClass.getDeclaredAnnotations()) {
System.out.println(annotation.toString());
}

关于java class.getAnnotation(Class<?> class) 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51085531/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com