我写了一个注释处理器。用户可以将选项作为处理器的参数传递。我也可以在我的注释处理器中读取这个参数。到目前为止一切顺利,一切都像预期的那样!
但是,我收到编译器发出的警告,传递给注释处理器的选项尚未被任何注释处理器记录:
警告:任何处理器都无法识别以下选项: ' [fragmentArgsLib]'
实际上,我的处理器已成功识别并阅读此选项:
@Override public boolean process(Set<? extends TypeElement> type, RoundEnvironment env) {
String fragementArgsLib = processingEnv.getOptions().get("fragmentArgsLib");
...
}
我想我必须手动说我已经使用此选项使此编译器警告消失。你们中的任何人都知道怎么做吗?
答案 0 :(得分:4)
找到答案,你必须通过覆盖getSupportedOptions()
或使用@SupportedOptions
注释(从java 7开始)指定注释处理器支持哪些选项