模块  java.compiler

Interface ProcessingEnvironment


  • public interface ProcessingEnvironment
    注释处理工具框架将为provide an annotation processor with an object implementing this interface,因此处理器可以使用框架提供的工具来编写新文件,报告错误消息以及查找其他实用程序。

    第三方可能希望通过此接口为设施对象提供增值包装,例如Filer扩展,允许多个处理器协调写出单个源文件。 为了实现这一点,在上下文中运行的处理器,其中通过API它们的副作用可能是彼此可见,该工具基础设施必须提供相应的设施对象.equalsFiler S中的.equals ,等等。 此外,必须能够配置工具调用,使得从运行注释处理器的角度来看,至少所选择的辅助类子集被视为由相同的类加载器加载。 (由于工具对象管理共享状态,因此包装类的实现必须知道之前是否已经包装了相同的基础工具对象。)

    从以下版本开始:
    1.6
    • 方法详细信息

      • getOptions

        Map<String,​String> getOptions()
        返回传递给注释处理工具的特定于处理器的选项。 选项以选项名称到选项值的映射形式返回。 对于没有值的选项,地图中的相应值为null

        有关如何传递特定于处理器的选项的详细信息,请参阅所用特定工具基础结构的文档。 例如,命令行实现可以通过在前面添加一个已知的字符串来区分特定于处理器的选项,如"-A" ; 其他工具实现可遵循不同的约定或提供替代机制。 除了特定于处理器的选项之外,给定实现还可以提供查找传递给工具的选项的特定于实现的方式。

        结果
        传递给工具的特定于处理器的选项
      • getMessager

        Messager getMessager()
        返回用于报告错误,警告和其他通知的消息。
        结果
        消息
      • getFiler

        Filer getFiler()
        返回用于创建新的源,类或辅助文件的文件管理器。
        结果
        文件管理器
      • getElementUtils

        Elements getElementUtils()
        返回一些用于操作元素的实用方法的实现
        结果
        元素实用程序
      • getTypeUtils

        Types getTypeUtils()
        返回一些用于对类型进行操作的实用程序方法的实现。
        结果
        类型实用程序
      • getLocale

        Locale getLocale()
        如果没有区域设置生效,则返回当前区域设置或null 语言环境可用于提供本地化的messages
        结果
        当前区域设置或 null如果没有区域设置生效)