- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 Java 时 reflections library我可以正确找到用注释修饰的类:
Set<Class<?>> annotated = reflections.getTypesAnnotatedWith(CommandName.class);
但是当我尝试查看每个类上有多少个注释时,我总是看到零:
for(Class c : annotated)
{
int numAnnotations = c.getAnnotations().length;
}
为什么c.getAnnotations()
返回长度为0的数组?事实上,在调试器中,c
的所有字段(除了name
)都是null
。
最佳答案
确认,事实证明注释不会保留到运行时,除非您使用 @Retention(RetentionPolicy.RUNTIME) 标记它们。这解决了它。奇怪的是,该类(class)包含在集合中。我认为要么全有,要么全无。
关于java - Reflections.getTypesAnnotatedWith(...) 找到类,但 getAnnotations().length 为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13368460/
像这样从 gwt 类 SecureDispatchService: @RemoteServiceRelativePath("dispatch") public interface SecureDisp
我有以下代码: import java.lang.annotation.*; @Target(ElementType.FIELD) @Retention(RetentionPolicy.RUNTIME
我期待这段代码: import java.util.Arrays; import java.lang.annotation.Retention; import java.lang.annotation
我想在我的应用程序中使用注释。为此,我为注释创建了“hello world”: 如下示例: public class HelloAnnotation { @Foo(bar = "Hello W
我正在尝试将 Java 库 (JOhm) 与 Scala 一起使用,并注意到当库尝试使用 field.isAnnotationPresent(Id.class) 之类的内容读取我的 Scala 类字段
我的注释看起来像这样: @Documented @Target(ElementType.FIELD) public @interface IsCrossSellingRevelant { bo
我有一个可重复的注解 @Repeatable(Examples.class) public @interface Example { int value(); } 带有容器注解 @Retent
我想运行一个简单的规则,如果它有特定的注释,它将尝试重新运行测试。具体来说,它将尝试根据用户的需要多次重新运行测试,方法是从 cusotm 读取 attempts int注释。 这是我创建的 cuso
我们可以在 Annotation 的接口(interface)上使用 getAnnotations() 但不能在 getAnnotation 上使用?为什么当我在以下程序中将接口(interface)
我正在尝试处理注释,我的处理器类扩展了 AbstractProcessor 并且 process 方法如下所示: KeyAnnotationProcessor.java @Override
我在 Spring 使用 AOP: 我写了一个注释 @Retention(RetentionPolicy.RUNTIME) public @interface TestAnnotation { } 我
我必须按照代码检查我的 model 中的实体是否在字段上有 nullable=false 或类似的注释。 import javax.persistence.Column; import ..... p
Searchable.java @Target(ElementType.FIELD) @Retention(RetentionPolicy.RUNTIME) public @interface Sea
我使用的是 Java 1.6.0_25。 我定义了一个注释: @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public
本文整理了Java中org.eclipse.xsd.XSDAttributeGroupDefinition.getAnnotation()方法的一些代码示例,展示了XSDAttributeGroupD
本文整理了Java中org.eclipse.xsd.XSDModelGroupDefinition.getAnnotation()方法的一些代码示例,展示了XSDModelGroupDefinitio
本文整理了Java中org.eclipse.xsd.XSDEnumerationFacet.getAnnotation()方法的一些代码示例,展示了XSDEnumerationFacet.getAnn
本文整理了Java中org.eclipse.xsd.XSDFacet.getAnnotation()方法的一些代码示例,展示了XSDFacet.getAnnotation()的具体用法。这些代码示例主
我注意到以下情况之间有一个有趣的区别,但无法解释: //this works Class myClass = Class.class; MyAnnotation myAnnotation = myCl
我在 Maven 模块“A”中创建了以下注释 @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RU
我是一名优秀的程序员,十分优秀!