Java Inherited Annotations is a library of
inherited annotations for developers solving the
annotation inheritance task. The annotations being
inherited are of classes, interfaces, or their
methods. It uses the consistent inheritance model:
inheritance proceeds only if the same annotation
is not present on the same element (class,
interface, or method) within superclasses or
superinterfaces. Annotations can be overridden
within descendants.