我有一个继承的注释并具有类保留:
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.CLASS)
@Inherited
public @interface MyAnnotation {}
它的用法如下:
@MyAnnotation
public class Parent {}
public class Child extends Parent {}
如果这些类在同一个项目中,我的注释处理器将在两个类上执行,因为注释是正确继承的。
如果Parent
在一个单独的项目中,其中.jar包含在Child
项目的类路径中,则它不起作用。注释处理器不会在Child
上执行。
这是设计还是有办法解决这个问题?