如何在Annotation中生成/声明注释字段?

时间:2016-12-06 17:20:16

标签: java sun-codemodel jcodemodel

我想得到这样的东西:

public @interface Unfinished {
  String value();
   String value() default "someVal";
}

问题是我无法使用JFieldVar,因为它看起来像这样:

String value; //no parentheses 
String value = "someVal"; //no parentheses, no "default", "=" sign

1 个答案:

答案 0 :(得分:1)

一种可能的方法是使用jDefinedClass.direct:

annotationClass.direct("String value();")
annotationClass.direct("String value() default \"someVal\";")

但我不喜欢这种做法。我要使用类似于JFielVar的东西。