# Uses of Package
javax.tools

Packages that use javax.tools
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
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
JavaFileObject: File abstraction for tools operating on Java™ programming language source and class files.

Classes in javax.tools used by com.sun.source.util
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
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
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
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
StandardJavaFileManager: File manager based on java.io.File and java.nio.file.Path.