public interface ToolProvider
新しいVMを必ず起動しなくても、呼び出す方法を提供するコマンドライン・ツール用のインタフェース。
 
ツール・プロバイダは通常、ServiceLoaderによって定義されたサービス・プロバイダ・ローディング機能を使用して配置されます。 各プロバイダは、対応するツールのインスタンスを実行するための名前とメソッドを提供する必要があります。 ツールが実行されると、文字列引数の配列とストリームのペアが提供されます: 1つは通常の(予想される)出力用です。もう1つは発生する可能性のあるエラーを報告します。 文字列引数の解釈は通常、個々のツール・プロバイダによって定義されますが、コマンドラインからツールを呼び出すときにツールに提供できる引数に一般的に対応します。 
- 導入されたバージョン:
- 9
- 
メソッドのサマリー修飾子と型 メソッド 説明 static Optional<ToolProvider>findFirst(String name)指定された名前を持つToolProviderの最初のインスタンスを返します。システム・クラス・ローダーを使用してServiceLoaderによってロードされます。Stringname()このツール・プロバイダの名前を返します。default intrun(PrintStream out, PrintStream err, String... args)ツールのインスタンスを実行し、成功した実行のためにゼロを返します。intrun(PrintWriter out, PrintWriter err, String... args)ツールのインスタンスを実行し、成功した実行のためにゼロを返します。
- 
メソッドの詳細- 
nameString name()このツール・プロバイダの名前を返します。- APIのノート:
- コマンドラインで使用される名前と同じ名前を使用することをお勧めします: たとえば、"javac"、"jar"、"jlink"。
- 戻り値:
- このツール・プロバイダの名前
 
- 
runint run(PrintWriter out, PrintWriter err, String... args)ツールのインスタンスを実行し、成功した実行のためにゼロを返します。 ゼロ以外の戻り値は、実行中のツール固有のエラーを示します。 "expected"出力とエラー・メッセージについては、2つのストリームを用意する必要があります。 出力を区別する必要がない場合は、両方に同じストリームを使用できます。- APIのノート:
- 引数の解釈は、各ツール固有のものとなります。
- パラメータ:
- out- "expected"出力を書き込むストリーム
- err- エラー・メッセージを書き込むストリーム
- args- ツールのコマンドライン引数
- 戻り値:
- ツールを実行した結果。 戻り値が0の場合、ツールにエラーが発生していないことを意味します。他の値は、実行中に少なくとも1つのエラーが発生したことを示します。
- 例外:
- NullPointerException- 引数のいずれかが- nullの場合、または- args配列に- null値がある場合
 
- 
rundefault int run(PrintStream out, PrintStream err, String... args)ツールのインスタンスを実行し、成功した実行のためにゼロを返します。 ゼロ以外の戻り値は、実行中のツール固有のエラーを示します。 "expected"出力とエラー・メッセージについては、2つのストリームを用意する必要があります。 出力を区別する必要がない場合は、両方に同じストリームを使用できます。- APIのノート:
- 引数の解釈は、各ツール固有のものとなります。
- 実装上のノート:
- この実装では、outストリームとerrストリームをPrintWriters内にラップし、run(PrintWriter, PrintWriter, String[])を呼び出します。
- パラメータ:
- out- "expected"出力を書き込むストリーム
- err- エラー・メッセージを書き込むストリーム
- args- ツールのコマンドライン引数
- 戻り値:
- ツールを実行した結果。 戻り値が0の場合、ツールにエラーが発生していないことを意味します。他の値は、実行中に少なくとも1つのエラーが発生したことを示します。
- 例外:
- NullPointerException- 引数のいずれかが- nullの場合、または- args配列に- null値がある場合
 
- 
findFirststatic Optional<ToolProvider> findFirst(String name)指定された名前を持つToolProviderの最初のインスタンスを返します。システム・クラス・ローダーを使用してServiceLoaderによってロードされます。- パラメータ:
- name- 目的のツール・プロバイダの名前
- 戻り値:
- 最初のインスタンスのOptional<ToolProvider>が見つかりました
- 例外:
- NullPointerException-- nameが- nullである場合
 
 
-