パッケージ javax.tools
これらのインタフェースおよびクラスはJava™ Platform, Standard Edition (Java SE)の一部として必須ですが、これらを実装するツールを提供する必要はありません。
このパッケージに含まれるすべてのメソッドは、明示的に許可されていないかぎり、引数としてnull
が指定された場合、またはnull
要素を含むリストまたはコレクションが指定された場合に、NullPointerExceptionをスローする可能性があります。 同様に、明示的に許可されていないかぎり、どのメソッドもnull
を返すことはできません。
このパッケージは、Javaプログラミング言語コンパイラ・フレームワークのホームです。 このフレームワークのクライアントは、プログラムからコンパイラを検索し、実行することができます。 このフレームワークは、ファイル・アクセスをオーバーライドするために使用するファイルの抽象化(JavaFileManagerとJavaFileObject)に加えて、診断情報の構造化アクセスに使用するサービス・プロバイダ・インタフェース(SPI)(DiagnosticListener)も提供します。 SPIの使用方法の詳細は、JavaCompilerを参照してください。
実行時は、コンパイラは不要です。 ただし、デフォルトのコンパイラが指定されている場合は、ToolProviderを使用して検索できます。次に例を示します。
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
サービス・プロバイダ・メカニズムを利用して、代替のコンパイラまたはツールを提供できます。
たとえば、com.vendor.VendorJavaCompiler
がJavaCompiler
ツールのプロバイダである場合、そのjarファイルには META-INF/services/javax.tools.JavaCompiler
ファイルが含まれます。 このファイルには、次の行が含まれます。
com.vendor.VendorJavaCompiler
クラス・パスにjarファイルが存在する場合、次のようなコードを使ってVendorJavaCompilerを検索できます。
JavaCompiler compiler = ServiceLoader.load(JavaCompiler.class).iterator().next();
- 導入されたバージョン:
- 1.6
-
インタフェースのサマリー インタフェース 説明 Diagnostic<S> ツールからの診断情報を表示するインタフェースです。DiagnosticListener<S> ツールからの診断情報を受け取るインタフェースです。DocumentationTool プログラムからJava™プログラミング言語ドキュメント・ツールを呼び出すインタフェースです。DocumentationTool.DocumentationTask ドキュメント・タスクのフューチャを表すインタフェースです。FileObject ツール用のファイルの抽象化です。JavaCompiler プログラムからJava™プログラミング言語コンパイラを呼び出すインタフェースです。JavaCompiler.CompilationTask コンパイル・タスクの将来を表すインタフェースです。JavaFileManager Java™プログラミング言語のソース・ファイルやクラス・ファイルを操作するツール向けのファイル・マネージャです。JavaFileManager.Location ファイル・オブジェクトの場所のインタフェースです。JavaFileObject Java™プログラミング言語のソース・ファイルやクラス・ファイルを操作するツール向けのファイルの抽象化です。OptionChecker オプションを認識するインタフェースです。StandardJavaFileManager java.io.Fileとjava.nio.file.Pathに基づくファイル・マネージャ。StandardJavaFileManager.PathFactory 文字列からPath
オブジェクトを作成するためのファクトリ。Tool プログラムから呼出し可能なツールの共通インタフェースです。 -
クラスのサマリー クラス 説明 DiagnosticCollector<S> 診断情報を簡単に収集し、リスト化する手段を提供します。ForwardingFileObject<F extends FileObject> 指定されたファイル・オブジェクトに呼出しを転送します。ForwardingJavaFileManager<M extends JavaFileManager> 指定されたファイル・マネージャに呼出しを転送します。ForwardingJavaFileObject<F extends JavaFileObject> 指定されたファイル・オブジェクトに呼出しを転送します。SimpleJavaFileObject JavaFileObjectに含まれる大部分のメソッドに対して、簡単な実装を提供します。ToolProvider コンパイラのプロバイダなど、ツール・プロバイダを検索するメソッドを提供します。 -
列挙型のサマリー 列挙型 説明 Diagnostic.Kind 診断情報の種類(エラー、警告など)です。DocumentationTool.Location DocumentationTool
に固有の場所です。JavaFileObject.Kind JavaFileObjectの種類です。StandardLocation ファイル・オブジェクトの標準の場所です。