Untitled

ProcessingEnvironment

public interface ProcessingEnvironment {
    Map<String, String> getOptions();

    Messager getMessager();

    Filer getFiler(); //获取Filer

    Elements getElementUtils(); //Elements

    Types getTypeUtils(); //获取Types

    SourceVersion getSourceVersion();

    Locale getLocale();
}

Elements

Elements是一个处理Element的工具类。常用的方法如下:

Element

在注解处理过程中,我们扫描所有的Java源文件。源代码的每一个部分都是一个特定类型的Element。换句话说:Element代表程序的元素,例如包、类或者方法。每个Element代表一个静态的、语言级别的构件。在下面的例子中,我们通过注释来说明这个。

Element代表的是源代码。TypeElement代表的是源代码中的类型元素,例如类。然而,TypeElement并不包含类本身的信息。你可以从TypeElement中获取类的名字,但是你获取不到类的信息,例如它的父类。这种信息需要通过TypeMirror获取。你可以通过调用elements.asType()获取元素的TypeMirror

最后更新于