- 
- すべてのスーパー・インタフェース:
- AutoCloseable,- Closeable,- Flushable,- JavaFileManager,- OptionChecker
 
 public interface StandardJavaFileManager extends JavaFileManager java.io.Fileとjava.nio.file.Pathに基づくファイル・マネージャ。 このクラスのインスタンスを取得する一般的な方法は、getStandardFileManagerを使用することです。次に例を示します:JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); このファイル・マネージャは、通常のファイル、zipファイル・エントリ、または同様のファイル・システムに基づくコンテナ内のエントリを表すファイル・オブジェクトを作成します。 このインタフェースを実装しているファイル・マネージャから返されるファイル・オブジェクトは、次の動作に従う必要があります。DiagnosticCollector<JavaFileObject>diagnostics = newDiagnosticCollector<JavaFileObject>(); StandardJavaFileManager fm = compiler.getStandardFileManager(diagnostics, null, null);- ファイル名は正規のものである必要はありません。
- 
     通常のファイルを表すファイル・オブジェクトの場合は次のようになります。
     - 
         メソッドFileObject.delete()はFile.delete()と同等です。
- 
         メソッドFileObject.getLastModified()はFile.lastModified()と同等です。
- 
         FileObject.getCharContent(boolean)、FileObject.openInputStream()、およびFileObject.openReader(boolean)の各メソッドは、次に示すものが成功した場合に成功する必要がある(エンコーディングの問題は無視)。new FileInputStream(new File(fileObject.toUri())) 
- 
         FileObject.openOutputStream()およびFileObject.openWriter()の各メソッドは、次に示すものが成功した場合に成功する必要がある(エンコーディングの問題は無視)。new FileOutputStream(new File(fileObject.toUri())) 
 
- 
         メソッド
- 
     FileObject.toUri()から返されるURIは次のようになる必要があります。- 絶対的である(スキーマを持つ)。
- プロセス固有のコンテキスト(現在のディレクトリなど)なしで解決できる標準化されたパス・コンポーネントを持つ(ファイル名は絶対的である必要がある)。
 
 - 
     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(ファイル名が相対的で、現在のディレクトリに依存している)
- 
     jar:lib/vendorA.jar!/com/vendora/LibraryClass.class(パスの前半は現在のディレクトリに依存しますが、!の後ろのコンポーネントは!法的です)
- 
     Test.java(このURIは現在のディレクトリに依存しており、スキーマを持たない)
- 
     jar:///C:/Documents%20and%20Settings/UncleBob/BobsApp/../lib/vendorA.jar!com/vendora/LibraryClass.class(パスが標準化されていない)
 このインタフェースのすべての実装では、「デフォルトのファイルシステム」内のファイルを表すパス・オブジェクトがサポートされている必要があります。 実装では、任意のファイルシステムからのパス・オブジェクトをサポートすることをお勧めします。 - APIに関するノート:
- このインタフェースの一部のメソッドは、Iterable<? extends Path>ではなくCollection<? extends Path>を使用します。 これは、PathがIterable<Path>を実装しているにもかかわらず、単一のPathでこれらのメソッドを呼び出すのは妥当ではないため、そのPathのIterableとして扱われるため、誤って単一のPathを持つメソッドを誤って呼び出す可能性を防ぐためです。コンポーネント。
- 導入されたバージョン:
- 1.6
 
- 
- 
ネストされたクラスのサマリーネストされたクラス 修飾子と型 インタフェース 説明 static interfaceStandardJavaFileManager.PathFactory文字列からPathオブジェクトを作成するためのファクトリ。- 
インタフェース javax.tools.JavaFileManagerで宣言されたネストされたクラス/インタフェースJavaFileManager.Location
 
- 
 - 
メソッドのサマリーすべてのメソッド インスタンス・メソッド 抽象メソッド デフォルト・メソッド 修飾子と型 メソッド 説明 default PathasPath(FileObject file)このファイル・オブジェクト(オプションの操作)の基礎をなすパス(存在する場合)を返します。Iterable<? extends JavaFileObject>getJavaFileObjects(File... files)指定されたファイルを表すファイル・オブジェクトを返します。Iterable<? extends JavaFileObject>getJavaFileObjects(String... names)指定されたファイル名を表すファイル・オブジェクトを返します。default Iterable<? extends JavaFileObject>getJavaFileObjects(Path... paths)指定されたパスを表すファイル・オブジェクトを返します。Iterable<? extends JavaFileObject>getJavaFileObjectsFromFiles(Iterable<? extends File> files)指定されたファイルを表すファイル・オブジェクトを返します。default Iterable<? extends JavaFileObject>getJavaFileObjectsFromPaths(Iterable<? extends Path> paths)指定されたパスを表すファイル・オブジェクトを返します。Iterable<? extends JavaFileObject>getJavaFileObjectsFromStrings(Iterable<String> names)指定されたファイル名を表すファイル・オブジェクトを返します。Iterable<? extends File>getLocation(JavaFileManager.Location location)指定されたロケーションに関連付けられた検索パスを返します。default Iterable<? extends Path>getLocationAsPaths(JavaFileManager.Location location)指定されたロケーションに関連付けられた検索パスを返します。booleanisSameFile(FileObject a, FileObject b)2つのファイル・オブジェクトを比較し、それらが同一の正規のファイル、zipファイル・エントリ、またはファイル・システムに基づくコンテナ内のエントリを表している場合はtrueを返します。voidsetLocation(JavaFileManager.Location location, Iterable<? extends File> files)指定された検索パスを指定されたロケーションに関連付けます。default voidsetLocationForModule(JavaFileManager.Location location, String moduleName, Collection<? extends Path> paths)指定された検索パスを、指定されたモジュールとロケーションに関連付けます。これは、モジュール指向または出力ロケーションでなければなりません。default voidsetLocationFromPaths(JavaFileManager.Location location, Collection<? extends Path> paths)指定された検索パスを指定されたロケーションに関連付けます。default voidsetPathFactory(StandardJavaFileManager.PathFactory f)文字列または一連の文字列からパスを生成するために使用できるファクトリを指定します。- 
インタフェース javax.tools.JavaFileManagerで宣言されたメソッドclose, contains, flush, getClassLoader, getFileForInput, getFileForOutput, getJavaFileForInput, getJavaFileForOutput, getLocationForModule, getLocationForModule, getServiceLoader, handleOption, hasLocation, inferBinaryName, inferModuleName, list, listLocationsForModules
 - 
インタフェース javax.tools.OptionCheckerで宣言されたメソッドisSupportedOption
 
- 
 
- 
- 
- 
メソッドの詳細- 
isSameFileboolean isSameFile(FileObject a, FileObject b) 2つのファイル・オブジェクトを比較し、それらが同一の正規のファイル、zipファイル・エントリ、またはファイル・システムに基づくコンテナ内のエントリを表している場合はtrueを返します。- 定義:
- isSameFile、インタフェース- JavaFileManager
- パラメータ:
- a- ファイル・オブジェクト
- b- ファイル・オブジェクト
- 戻り値:
- 指定されたファイル・オブジェクトが同じ正規ファイル、zipファイル・エントリまたはパスを表す場合はtrue、そうでない場合はfalse
- 例外:
- IllegalArgumentException- 一方の引数が別のファイル・マネージャ実装で作成された場合
 
 - 
getJavaFileObjectsFromFilesIterable<? extends JavaFileObject> getJavaFileObjectsFromFiles(Iterable<? extends File> files) 指定されたファイルを表すファイル・オブジェクトを返します。- パラメータ:
- files- ファイルのリスト
- 戻り値:
- ファイル・オブジェクトのリスト
- 例外:
- IllegalArgumentException- ファイルのリストにディレクトリが含まれる場合
 
 - 
getJavaFileObjectsFromPathsdefault Iterable<? extends JavaFileObject> getJavaFileObjectsFromPaths(Iterable<? extends Path> paths) 指定されたパスを表すファイル・オブジェクトを返します。- 実装要件:
- デフォルトの実装では、各パスがファイルに変換され、getJavaObjectsFromFilesが呼び出されます。 いずれかのパスをファイルに変換できない場合、IllegalArgumentExceptionがスローされます。
- パラメータ:
- paths- パスのリスト
- 戻り値:
- ファイル・オブジェクトのリスト
- 例外:
- IllegalArgumentException- パスのリストにディレクトリが含まれている場合、またはこのファイル・マネージャが指定されたパスをサポートしていない場合。
- 導入されたバージョン:
- 9
 
 - 
getJavaFileObjectsIterable<? extends JavaFileObject> getJavaFileObjects(File... files) - パラメータ:
- files- ファイルの配列
- 戻り値:
- ファイル・オブジェクトのリスト
- 例外:
- IllegalArgumentException- ファイルの配列にディレクトリが含まれる場合
- NullPointerException- 指定された配列にnull要素が含まれる場合
 
 - 
getJavaFileObjectsdefault Iterable<? extends JavaFileObject> getJavaFileObjects(Path... paths) - パラメータ:
- paths- パスの配列
- 戻り値:
- ファイル・オブジェクトのリスト
- 例外:
- IllegalArgumentException- ファイルの配列にディレクトリが含まれる場合
- NullPointerException- 指定された配列にnull要素が含まれる場合
- 導入されたバージョン:
- 9
 
 - 
getJavaFileObjectsFromStringsIterable<? extends JavaFileObject> getJavaFileObjectsFromStrings(Iterable<String> names) 指定されたファイル名を表すファイル・オブジェクトを返します。- パラメータ:
- names- ファイル名のリスト
- 戻り値:
- ファイル・オブジェクトのリスト
- 例外:
- IllegalArgumentException- ファイル名のリストにディレクトリが含まれる場合
 
 - 
getJavaFileObjectsIterable<? extends JavaFileObject> getJavaFileObjects(String... names) 指定されたファイル名を表すファイル・オブジェクトを返します。 同等の簡易メソッドは、次のとおりです。getJavaFileObjectsFromStrings(Arrays.asList(names))- パラメータ:
- names- ファイル名のリスト
- 戻り値:
- ファイル・オブジェクトのリスト
- 例外:
- IllegalArgumentException- ファイル名の配列にディレクトリが含まれる場合
- NullPointerException- 指定された配列にnull要素が含まれる場合
 
 - 
setLocationvoid setLocation(JavaFileManager.Location location, Iterable<? extends File> files) throws IOException 指定された検索パスを指定されたロケーションに関連付けます。 以前の値はすべて破棄されます。 ロケーションがモジュール指向または出力ロケーションの場合、setLocationForModuleによって設定されたモジュール固有の関連付けはすべて取消されます。- パラメータ:
- location- 場所
- files-- nullがこのロケーションにデフォルトの検索パスを使用する場合、ファイルのリスト
- 例外:
- IllegalArgumentException-- locationが出力ロケーションで、- filesに正確に1つの要素が含まれていない場合
- IOException-- locationが出力ロケーションであり、既存のディレクトリを表していない場合
- 関連項目:
- getLocation(javax.tools.JavaFileManager.Location)
 
 - 
setLocationFromPathsdefault void setLocationFromPaths(JavaFileManager.Location location, Collection<? extends Path> paths) throws IOException 指定された検索パスを指定されたロケーションに関連付けます。 以前の値はすべて破棄されます。 ロケーションがモジュール指向または出力ロケーションの場合、setLocationForModuleによって設定されたモジュール固有の関連付けはすべて取消されます。- 実装要件:
- デフォルトの実装では、各パスがファイルに変換され、getJavaObjectsFromFilesが呼び出されます。 いずれかのパスをファイルに変換できない場合は、IllegalArgumentExceptionがスローされます。
- パラメータ:
- location- 場所
- paths-- nullがこのロケーションにデフォルトの検索パスを使用する場合、パスのリスト
- 例外:
- IllegalArgumentException-- locationが出力ロケーションで、- pathsに要素が1つも含まれていない場合、またはこのファイル・マネージャが指定されたパスをサポートしていない場合
- IOException-- locationが出力ロケーションで、- pathsが既存のディレクトリを表していない場合
- 導入されたバージョン:
- 9
- 関連項目:
- getLocation(javax.tools.JavaFileManager.Location)
 
 - 
setLocationForModuledefault void setLocationForModule(JavaFileManager.Location location, String moduleName, Collection<? extends Path> paths) throws IOException 指定された検索パスを、指定されたモジュールとロケーションに関連付けます。これは、モジュール指向または出力ロケーションでなければなりません。 以前の値はすべて破棄されます。 これは、ロケーション自体に関連付けられた検索パスから派生したデフォルトの関連付けをオーバーライドします。 setLocationまたはsetLocationFromPathsを呼び出すことで、新しい検索パスがロケーションに関連付けられている場合、そのようなモジュール固有の関連付けはすべて取消されます。- パラメータ:
- location- ロケーション
- moduleName- モジュールの名前
- paths- ロケーションとモジュールに関連付ける検索パス。
- 例外:
- IllegalStateException- ロケーションがモジュール指向または出力ロケーションでない場合。
- UnsupportedOperationException- この操作がこのファイル・マネージャでサポートされていない場合。
- IOException-- locationが出力ロケーションで、- pathsが既存のディレクトリを表していない場合
- 導入されたバージョン:
- 9
- 関連項目:
- setLocation(javax.tools.JavaFileManager.Location,java.lang.Iterable<? extends java.io.File>),- setLocationFromPaths(javax.tools.JavaFileManager.Location,java.util.Collection<? extends java.nio.file.Path>)
 
 - 
getLocationIterable<? extends File> getLocation(JavaFileManager.Location location) 指定されたロケーションに関連付けられた検索パスを返します。- パラメータ:
- location- 場所
- 戻り値:
- このロケーションに関連する検索パスがない場合はファイルのリストまたはnull
- 例外:
- IllegalStateException- 検索パスの要素がFileに変換できない場合、または検索パスを単純な一連のファイルとして表すことができない場合。
- 関連項目:
- setLocation(javax.tools.JavaFileManager.Location, java.lang.Iterable<? extends java.io.File>),- Path.toFile()
 
 - 
getLocationAsPathsdefault Iterable<? extends Path> getLocationAsPaths(JavaFileManager.Location location) 指定されたロケーションに関連付けられた検索パスを返します。- 実装要件:
- デフォルトの実装ではgetLocationを呼び出し、getLocationから返された各FileにtoPath()を呼び出して形成されたIterableを返します。
- パラメータ:
- location- 場所
- 戻り値:
- このロケーションに関連する検索パスがない場合は、パスのリストまたはnull
- 例外:
- IllegalStateException- 検索パスを単純な一連のパスとして表現できない場合。
- 導入されたバージョン:
- 9
- 関連項目:
- setLocationFromPaths(javax.tools.JavaFileManager.Location, java.util.Collection<? extends java.nio.file.Path>)
 
 - 
asPathdefault Path asPath(FileObject file) このファイル・オブジェクト(オプションの操作)の基礎をなすパス(存在する場合)を返します。 デフォルトのファイル・システムを含むFileSystemから派生したファイル・オブジェクトには、通常、対応する基礎となるPathオブジェクトがあります。 このような場合、このメソッドを使用してそのオブジェクトにアクセスすることができます。- 実装要件:
- デフォルトの実装では、すべてのファイルに対してUnsupportedOperationExceptionがスローされます。
- パラメータ:
- file- ファイル・オブジェクト
- 戻り値:
- 同じ基礎となるファイル・システム・アーティファクトを表すパス
- 例外:
- IllegalArgumentException- ファイル・オブジェクトに基本パスがない場合
- UnsupportedOperationException- 操作がこのファイル・マネージャによってサポートされていない場合
- 導入されたバージョン:
- 9
 
 - 
setPathFactorydefault void setPathFactory(StandardJavaFileManager.PathFactory f) 文字列または一連の文字列からパスを生成するために使用できるファクトリを指定します。 このメソッドが呼び出されない場合、getPathメソッドがjava.nio.file.Paths.get(first, more)を呼び出すことと同等のファクトリが使用されます。- 実装要件:
- このメソッドのデフォルト実装では、提供されているファクトリが無視されます。
- パラメータ:
- f- ファクトリ
- 導入されたバージョン:
- 9
 
 
- 
 
-