我想为一些方法生成的一些值提供注释。
到目前为止我试过这个:
public @interface MyInterface {
    String aString();
}
@MyInterface(aString = MyClass.GENERIC_GENERATED_NAME)
public class MyClass {
    static final String GENERIC_GENERATED_NAME = MyClass.generateName(MyClass.class);
    public static final String generateName(final Class<?> c) {
        return c.getClass().getName();
    }
}
想法GENERIC_GENERATED_NAME是static final,它抱怨说
注释属性的值
MyInterface.aString必须是常量表达式
那么如何实现呢?