# Uses of Interface
javax.tools.JavaFileObject

Packages that use JavaFileObject
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.

## Uses of JavaFileObject in com.sun.source.doctree

Methods in com.sun.source.doctree that return types with arguments of type JavaFileObject
Modifier and Type
Method
Description
`Diagnostic<JavaFileObject>`
ErroneousTree.`getDiagnostic()`
Returns a diagnostic object giving details about the reason the body text is in error.

## Uses of JavaFileObject in com.sun.source.tree

Methods in com.sun.source.tree that return JavaFileObject
Modifier and Type
Method
Description
`JavaFileObject`
CompilationUnitTree.`getSourceFile()`
Returns the file object containing the source for this compilation unit.

## Uses of JavaFileObject in com.sun.source.util

Methods in com.sun.source.util that return JavaFileObject
Modifier and Type
Method
Description
`JavaFileObject`
TaskEvent.`getSourceFile()`
Returns the source file for this event.
Methods in com.sun.source.util that return types with arguments of type JavaFileObject
Modifier and Type
Method
Description
`abstract Iterable<? extends JavaFileObject>`
JavacTask.`generate()`
Generates code.
Method parameters in com.sun.source.util with type arguments of type JavaFileObject
Modifier and Type
Method
Description
`ErroneousTree`
DocTreeFactory.`newErroneousTree(String text, Diagnostic<JavaFileObject> diag)`
Creates a new `ErroneousTree` object, to represent some unparseable input.
Constructors in com.sun.source.util with parameters of type JavaFileObject
Modifier
Constructor
Description
``
`TaskEvent(TaskEvent.Kind kind, JavaFileObject sourceFile)`
Creates a task event for a given kind and source file.

## Uses of JavaFileObject in javax.annotation.processing

Methods in javax.annotation.processing that return JavaFileObject
Modifier and Type
Method
Description
`JavaFileObject`
Filer.`createClassFile(CharSequence name, Element... originatingElements)`
Creates a new class file, and returns an object to allow writing to it.
`JavaFileObject`
Filer.`createSourceFile(CharSequence name, Element... originatingElements)`
Creates a new source file and returns an object to allow writing to it.

## Uses of JavaFileObject in javax.tools

Classes in javax.tools with type parameters of type JavaFileObject
Modifier and Type
Class
Description
`class`
`ForwardingJavaFileObject<F extends JavaFileObject>`
Forwards calls to a given file object.
Classes in javax.tools that implement JavaFileObject
Modifier and Type
Class
Description
`class`
`ForwardingJavaFileObject<F extends JavaFileObject>`
Forwards calls to a given file object.
`class`
`SimpleJavaFileObject`
Provides simple implementations for most methods in JavaFileObject.
Methods in javax.tools that return JavaFileObject
Modifier and Type
Method
Description
`JavaFileObject`
ForwardingJavaFileManager.`getJavaFileForInput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind)`
`JavaFileObject`
JavaFileManager.`getJavaFileForInput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind)`
Returns a file object for input representing the specified class of the specified kind in the given package-oriented location.
`JavaFileObject`
ForwardingJavaFileManager.`getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling)`
`JavaFileObject`
JavaFileManager.`getJavaFileForOutput(JavaFileManager.Location location, String className, JavaFileObject.Kind kind, FileObject sibling)`
Returns a file object for output representing the specified class of the specified kind in the given package-oriented location.
Methods in javax.tools that return types with arguments of type JavaFileObject
Modifier and Type
Method
Description
`Iterable<? extends JavaFileObject>`
StandardJavaFileManager.`getJavaFileObjects(File... files)`
Returns file objects representing the given files.
`Iterable<? extends JavaFileObject>`
StandardJavaFileManager.`getJavaFileObjects(String... names)`
Returns file objects representing the given file names.
`default Iterable<? extends JavaFileObject>`
StandardJavaFileManager.`getJavaFileObjects(Path... paths)`
Returns file objects representing the given paths.
`Iterable<? extends JavaFileObject>`
StandardJavaFileManager.`getJavaFileObjectsFromFiles(Iterable<? extends File> files)`
Returns file objects representing the given files.
`default Iterable<? extends JavaFileObject>`
StandardJavaFileManager.`getJavaFileObjectsFromPaths(Iterable<? extends Path> paths)`
Deprecated.
use `StandardJavaFileManager.getJavaFileObjectsFromPaths(Collection)` instead, to prevent the possibility of accidentally calling the method with a single `Path` as such an argument.
`default Iterable<? extends JavaFileObject>`
StandardJavaFileManager.`getJavaFileObjectsFromPaths(Collection<? extends Path> paths)`
Returns file objects representing the given paths.
`Iterable<? extends JavaFileObject>`
StandardJavaFileManager.`getJavaFileObjectsFromStrings(Iterable<String> names)`
Returns file objects representing the given file names.
`Iterable<JavaFileObject>`
ForwardingJavaFileManager.`list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse)`
`Iterable<JavaFileObject>`
JavaFileManager.`list(JavaFileManager.Location location, String packageName, Set<JavaFileObject.Kind> kinds, boolean recurse)`
Lists all file objects matching the given criteria in the given package-oriented location.
Methods in javax.tools with parameters of type JavaFileObject
Modifier and Type
Method
Description
`JavaFileManager.Location`
ForwardingJavaFileManager.`getLocationForModule(JavaFileManager.Location location, JavaFileObject fo)`
`default JavaFileManager.Location`
JavaFileManager.`getLocationForModule(JavaFileManager.Location location, JavaFileObject fo)`
Gets a location for the module containing a specific file to be found within a location, which may be either a module-oriented location or an output location.
`String`
ForwardingJavaFileManager.`inferBinaryName(JavaFileManager.Location location, JavaFileObject file)`
`String`
JavaFileManager.`inferBinaryName(JavaFileManager.Location location, JavaFileObject file)`
Infers a binary name of a file object based on a package-oriented location.
Method parameters in javax.tools with type arguments of type JavaFileObject
Modifier and Type
Method
Description
`StandardJavaFileManager`
DocumentationTool.`getStandardFileManager(DiagnosticListener<? super JavaFileObject> diagnosticListener, Locale locale, Charset charset)`
Returns a new instance of the standard file manager implementation for this tool.
`StandardJavaFileManager`
JavaCompiler.`getStandardFileManager(DiagnosticListener<? super JavaFileObject> diagnosticListener, Locale locale, Charset charset)`
Returns a new instance of the standard file manager implementation for this tool.
`DocumentationTool.DocumentationTask`
DocumentationTool.`getTask(Writer out, JavaFileManager fileManager, DiagnosticListener<? super JavaFileObject> diagnosticListener, Class<?> docletClass, Iterable<String> options, Iterable<? extends JavaFileObject> compilationUnits)`
Creates a future for a documentation task with the given components and arguments.
`JavaCompiler.CompilationTask`
JavaCompiler.`getTask(Writer out, JavaFileManager fileManager, DiagnosticListener<? super JavaFileObject> diagnosticListener, Iterable<String> options, Iterable<String> classes, Iterable<? extends JavaFileObject> compilationUnits)`
Creates a future for a compilation task with the given components and arguments.