I'm trying to dynamically add an annotation to a class at runtime, as in this question: Modify a class definition's annotation string parameter at runtime
However, the 'annotations' field is coming back null. In fact, according to the debugger, everything on the class is coming back null except for "declaredFields" and "name". I'm using Java 7.
Here's my code:
Field field = Class.class.getDeclaredField("annotations");
field.setAccessible(true);
Map<Class<? extends Annotation>, Annotation> annotations =
(Map<Class<? extends Annotation>, Annotation>)
field.get(clazz);
annotations.put(JsonIdentityInfo.class, newAnnotation);