# Uses of Package
javax.tools

- Packages that use javax.tools
  Package | Description
  --- | ---
  com.sun.source.doctree | Provides interfaces to represent documentation comments as abstract syntax trees (AST).
  com.sun.source.tree | Provides interfaces to represent source code as abstract syntax trees (AST).
  com.sun.source.util | Provides utilities for operations on abstract syntax trees (AST).
  javax.annotation.processing | Facilities for declaring annotation processors and for allowing annotation processors to communicate with an annotation processing tool environment.
  javax.tools | Provides interfaces for tools which can be invoked from a program, for example, compilers.
  jdk.javadoc.doclet | The Doclet API provides an environment which, in conjunction with the Language Model API and Compiler Tree API, allows clients to inspect the source-level structures of programs and libraries, including API comments embedded in the source.
  jdk.jshell | Provides interfaces for creating tools, such as a Read-Eval-Print Loop (REPL), which interactively evaluate "snippets" of Java programming language code.

- Classes in javax.tools used by com.sun.source.doctree
  Class | Description
  --- | ---
  Diagnostic | Interface for diagnostics from tools.
  JavaFileObject | File abstraction for tools operating on Java™ programming language source and class files.

- Classes in javax.tools used by com.sun.source.tree
  Class | Description
  --- | ---
  JavaFileObject | File abstraction for tools operating on Java™ programming language source and class files.

- Classes in javax.tools used by com.sun.source.util
  Class | Description
  --- | ---
  Diagnostic | Interface for diagnostics from tools.
  Diagnostic.Kind | Kinds of diagnostics, for example, error or warning.
  FileObject | File abstraction for tools.
  JavaCompiler.CompilationTask | Interface representing a future for a compilation task.
  JavaFileObject | File abstraction for tools operating on Java™ programming language source and class files.

- Classes in javax.tools used by javax.annotation.processing
  Class | Description
  --- | ---
  Diagnostic.Kind | Kinds of diagnostics, for example, error or warning.
  FileObject | File abstraction for tools.
  JavaFileManager.Location | Interface for locations of file objects.
  JavaFileObject | File abstraction for tools operating on Java™ programming language source and class files.

- Classes in javax.tools used by javax.tools
  Class | Description
  --- | ---
  Diagnostic | Interface for diagnostics from tools.
  Diagnostic.Kind | Kinds of diagnostics, for example, error or warning.
  DiagnosticListener | Interface for receiving diagnostics from tools.
  DocumentationTool | Interface to invoke Java™ programming language documentation tools from programs.
  DocumentationTool.DocumentationTask | Interface representing a future for a documentation task.
  DocumentationTool.Location | Locations specific to `DocumentationTool`.
  FileObject | File abstraction for tools.
  ForwardingFileObject | Forwards calls to a given file object.
  JavaCompiler | Interface to invoke Java™ programming language compilers from programs.
  JavaCompiler.CompilationTask | Interface representing a future for a compilation task.
  JavaFileManager | File manager for tools operating on Java™ programming language source and class files.
  JavaFileManager.Location | Interface for locations of file objects.
  JavaFileObject | File abstraction for tools operating on Java™ programming language source and class files.
  JavaFileObject.Kind | Kinds of JavaFileObjects.
  OptionChecker | Interface for recognizing options.
  StandardJavaFileManager | File manager based on java.io.File and java.nio.file.Path.
  StandardJavaFileManager.PathFactory | Factory to create `Path` objects from strings.
  StandardLocation | Standard locations of file objects.
  Tool | Common interface for tools that can be invoked from a program.

- Classes in javax.tools used by jdk.javadoc.doclet
  Class | Description
  --- | ---
  Diagnostic.Kind | Kinds of diagnostics, for example, error or warning.
  JavaFileManager | File manager for tools operating on Java™ programming language source and class files.
  JavaFileObject.Kind | Kinds of JavaFileObjects.

- Classes in javax.tools used by jdk.jshell
  Class | Description
  --- | ---
  StandardJavaFileManager | File manager based on java.io.File and java.nio.file.Path.