任何处理器都无法识别AnnotationProcessor选项

时间:2014-12-22 17:25:33

标签: java annotation-processing

我写了一个注释处理器。用户可以将选项作为处理器的参数传递。我也可以在我的注释处理器中读取这个参数。到目前为止一切顺利,一切都像预期的那样!

但是,我收到编译器发出的警告,传递给注释处理器的选项尚未被任何注释处理器记录:

  

警告:任何处理器都无法识别以下选项:   ' [fragmentArgsLib]'

实际上,我的处理器已成功识别并阅读此选项:

@Override public boolean process(Set<? extends TypeElement> type, RoundEnvironment env) {

    String fragementArgsLib = processingEnv.getOptions().get("fragmentArgsLib");
    ... 
}

我想我必须手动说我已经使用此选项使此编译器警告消失。你们中的任何人都知道怎么做吗?

1 个答案:

答案 0 :(得分:4)

找到答案,你必须通过覆盖getSupportedOptions()或使用@SupportedOptions注释(从java 7开始)指定注释处理器支持哪些选项