Генерация кода аннотаций с помощью JavaPoet

Я пишу генератор кода с использованием JavaPoet, и мне нужно добавить аннотацию к классу.

Например :

@RequestMapping("/api")
public class SomeResource {
   // rest of the code elided
}

Я могу зайти так далеко:

TypeSpec spec = TypeSpec
   .classBuilder("SomeResource")
     .addAnnotation(AnnotationSpec.builder(RequestMapping.class)
     // what should go here?
     .build())
   .build();

В AnnotationSpec.Builder есть метод addMember, но он, похоже, не делает то, что я хочу.


person nvalada    schedule 01.09.2015    source источник


Ответы (1)


Пожалуйста, попробуйте добавить аннотацию следующим образом:

    TypeSpec spec = TypeSpec.classBuilder("SomeResource")
            .addAnnotation(
                    AnnotationSpec.builder(RequestMapping.class)
                    .addMember("value", "$S", "/api")
                    .build())
            .build();
person rpozarickij    schedule 01.09.2015