JavaTM Platform
Standard Ed. 6

パッケージ javax.tools

コンパイラなどのプログラムから呼び出せるツールのインタフェースを提供します。

参照先:
          説明

インタフェースの概要
Diagnostic<S> ツールからの診断情報を表示するインタフェースです。
DiagnosticListener<S> ツールからの診断情報を受け取るインタフェースです。
FileObject ツール用のファイルの抽象化です。
JavaCompiler Java プログラムから Java™ プログラミング言語コンパイラを呼び出すインタフェースです。
JavaCompiler.CompilationTask コンパイルタスクの将来を表すインタフェースです。
JavaFileManager Java™ プログラミング言語のソースファイルやクラスファイルを操作するツール向けのファイルマネージャーです。
JavaFileManager.Location ファイルオブジェクトの場所のインタフェースです。
JavaFileObject Java™ プログラミング言語のソースファイルやクラスファイルを操作するツール向けのファイルの抽象化です。
OptionChecker オプションを認識するインタフェースです。
StandardJavaFileManager java.io.File に基づいたファイルマネージャーです。
Tool プログラムから呼び出し可能なツールの共通インタフェースです。
 

クラスの概要
DiagnosticCollector<S> 診断情報を簡単に収集し、リスト化する手段を提供します。
ForwardingFileObject<F extends FileObject> 指定されたファイルオブジェクトに呼び出しを転送します。
ForwardingJavaFileManager<M extends JavaFileManager> 指定されたファイルマネージャーに呼び出しを転送します。
ForwardingJavaFileObject<F extends JavaFileObject> 指定されたファイルオブジェクトに呼び出しを転送します。
SimpleJavaFileObject JavaFileObject に含まれる大部分のメソッドに対して、簡単な実装を提供します。
ToolProvider コンパイラのプロバイダなど、ツールプロバイダを検索するメソッドを提供します。
 

列挙型の概要
Diagnostic.Kind 診断情報の種類 (エラー、警告など) です。
JavaFileObject.Kind JavaFileObject の種類です。
StandardLocation ファイルオブジェクトの標準の場所です。
 

パッケージ 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.VendorJavaCompilerJavaCompiler ツールのプロバイダである場合、その jar ファイルには META-INF/services/javax.tools.JavaCompiler ファイルが含まれます。このファイルには、次の行が含まれます。

com.vendor.VendorJavaCompiler

クラスパスに jar ファイルが存在する場合、次のようなコードを使って VendorJavaCompiler を検索できます。

JavaCompiler compiler = ServiceLoader.load(JavaCompiler.class).iterator().next();

導入されたバージョン:
1.6

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。