public interface StandardJavaFileManager extends JavaFileManager
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();This file manager creates file objects representing regular files, zip file entries, or entries in similar file system based containers. Any file object returned from a file manager implementing this interface must observe the following behavior:DiagnosticCollector<JavaFileObject>diagnostics = newDiagnosticCollector<JavaFileObject>(); StandardJavaFileManager fm = compiler.getStandardFileManager(diagnostics, null, null);
FileObject.delete() is equivalent to File.delete() , FileObject.getLastModified() is equivalent to File.lastModified() , FileObject.getCharContent(boolean) , FileObject.openInputStream() , and FileObject.openReader(boolean) must succeed if the following would succeed (ignoring encoding issues):
new FileInputStream(new File(fileObject.toUri()))
FileObject.openOutputStream() , and FileObject.openWriter() must succeed if the following would succeed (ignoring encoding issues):
new FileOutputStream(new File(fileObject.toUri()))
FileObject.toUri()
file:///C:/Documents%20and%20Settings/UncleBob/BobsApp/Test.java jar:///C:/Documents%20and%20Settings/UncleBob/lib/vendorA.jar!com/vendora/LibraryClass.class file:BobsApp/Test.java (the file name is relative and depend on the current directory) jar:lib/vendorA.jar!com/vendora/LibraryClass.class (the first half of the path depends on the current directory, whereas the component after ! is legal) Test.java (this URI depends on the current directory and does not have a schema) jar:///C:/Documents%20and%20Settings/UncleBob/BobsApp/../lib/vendorA.jar!com/vendora/LibraryClass.class (the path is not normalized) JavaFileManager.Location | Modifier and Type | Method and Description |
|---|---|
Iterable |
getJavaFileObjects(File
Gets file objects representing the given files.
|
Iterable |
getJavaFileObjects(String
Gets file objects representing the given file names.
|
Iterable |
getJavaFileObjectsFromFiles(Iterable
Gets file objects representing the given files.
|
Iterable |
getJavaFileObjectsFromStrings(Iterable
Gets file objects representing the given file names.
|
Iterable |
getLocation(JavaFileManager
Gets the path associated with the given location.
|
boolean |
isSameFile(FileObject
Compares two file objects and return true if they represent the same canonical file, zip file entry, or entry in any file system based container.
|
void |
setLocation(JavaFileManager
Associates the given path with the given location.
|
close, flush, getClassLoader, getFileForInput, getFileForOutput, getJavaFileForInput, getJavaFileForOutput, handleOption, hasLocation, inferBinaryName, listisSupportedOptionboolean isSameFile(FileObjecta, FileObject b)
isSameFile in interface
JavaFileManager
a - a file object
b - a file object
IllegalArgumentException - if either of the arguments were created with another file manager implementation
Iterable<? extends JavaFileObject > getJavaFileObjectsFromFiles(Iterable <? extends File > files)
files - a list of files
IllegalArgumentException - if the list of files includes a directory
Iterable<? extends JavaFileObject > getJavaFileObjects(File ... files)
getJavaFileObjectsFromFiles(Arrays.asList(files))
files - an array of files
IllegalArgumentException - if the array of files includes a directory
NullPointerException - if the given array contains null elements
Iterable<? extends JavaFileObject > getJavaFileObjectsFromStrings(Iterable <String > names)
names - a list of file names
IllegalArgumentException - if the list of file names includes a directory
Iterable<? extends JavaFileObject > getJavaFileObjects(String ... names)
getJavaFileObjectsFromStrings(Arrays.asList(names))
names - a list of file names
IllegalArgumentException - if the array of file names includes a directory
NullPointerException - if the given array contains null elements
void setLocation(JavaFileManager.Location location, Iterable <? extends File > path) throws IOException
location - a location
path - a list of files, if
null use the default path for this location
IllegalArgumentException - if location is an output location and path does not contain exactly one element
IOException - if location is an output location and path does not represent an existing directory
getLocation(javax.tools.JavaFileManager.Location)
Iterable<? extends File > getLocation(JavaFileManager .Location location)
location - a location
null if this location has no associated path
setLocation(javax.tools.JavaFileManager.Location, java.lang.Iterable<? extends java.io.File>)