public interface JavaShellToolBuilder
Javaシェル・ツール・インスタンスを構成および実行するためのインタフェース。 ビルダーのインスタンスは、静的な
builder()
メソッドを使用して作成されます。 このBuilderは、必要に応じて構成メソッドを使用して構成できます。 すべての構成メソッドは、連鎖初期化で使用するBuilderインスタンスを戻します。 すべての構成メソッドは、呼び出されない場合に使用される適切なデフォルトを持っています。 0回以上構成メソッドを呼び出した後、run(java.lang.String...)
を呼び出してツールを起動します。 - 導入されたバージョン:
- 9
-
メソッドのサマリー
修飾子と型メソッド説明static JavaShellToolBuilder
builder()
JDK jshellツールを起動するためのビルダーを作成します。環境変数のソースを設定します。err
(PrintStream error) エラー・チャネルを設定します。err
(PrintStream cmdErr, PrintStream userErr) エラー・チャネルを設定します。in
(InputStream cmdIn, InputStream userIn) 入力チャネルを設定します。default JavaShellToolBuilder
interactiveTerminal
(boolean terminal) 入力および出力は、ANSIのエスケープ・コードを解釈できる対話型端末に接続されるようにするには、trueに設定します。ロケールを設定します。out
(PrintStream output) 出力チャネルを設定します。out
(PrintStream cmdOut, PrintStream console, PrintStream userOut) 出力チャネルを設定します。persistence
(Map<String, String> prefsMap) 入力履歴と保持されている設定を含む永続情報用の記憶機構を設定します。persistence
(Preferences prefs) 入力履歴と保持されている設定を含む永続情報用の記憶機構を設定します。promptCapture
(boolean capture) コマンド・キャプチャ・プロンプトを有効にするように設定します。void
このインタフェースの他のメソッドで構成されたJavaシェル・ツールのインスタンスを実行します。default int
このインタフェースの他のメソッドで構成されたJavaシェル・ツールのインスタンスを実行します。
-
メソッドの詳細
-
builder
static JavaShellToolBuilder builder()JDK jshellツールを起動するためのビルダーを作成します。- 戻り値:
- jshellツールの構成と起動に使用できるビルダー
-
in
JavaShellToolBuilder in(InputStream cmdIn, InputStream userIn) 入力チャネルを設定します。- 実装要件:
- このメソッドが呼び出されない場合、その動作は
in(System.in, null)
を呼び出すことと同等でなければなりません。 - パラメータ:
cmdIn
- コマンド入力元userIn
- ユーザー・コードを実行するための入力ソース、またはcmdInからユーザー入力を抽出するnull
- 戻り値:
JavaShellToolBuilder
インスタンス
-
out
JavaShellToolBuilder out(PrintStream output) 出力チャネルを設定します。out(output, output, output)
と同じです。- 実装要件:
- どちらも
out
メソッドが呼び出されない場合、その動作はout(System.out)
を呼び出すのと同じでなければなりません。 - パラメータ:
output
- コマンド・フィード・バックの宛先、コンソール対話、およびユーザー・コード出力- 戻り値:
JavaShellToolBuilder
インスタンス
-
out
JavaShellToolBuilder out(PrintStream cmdOut, PrintStream console, PrintStream userOut) 出力チャネルを設定します。- 実装要件:
- どちらも
out
メソッドが呼び出されない場合、その動作はout(System.out, System.out, System.out)
を呼び出すのと同じでなければなりません。 - パラメータ:
cmdOut
- ユーザーに対するエラー・メッセージを含むコマンド・フィード・バックの宛先console
- コンソール対話の宛先userOut
- ユーザー・コード出力先。 たとえば、Hello
を実行すると、ユーザー・スニペットSystem.out.println("Hello")
がuserOutに移動します。- 戻り値:
JavaShellToolBuilder
インスタンス
-
err
JavaShellToolBuilder err(PrintStream error) エラー・チャネルを設定します。err(error, error)
と同じです。- 実装要件:
- どちらも
err
メソッドが呼び出されない場合、その動作はerr(System.err)
を呼び出すのと同じでなければなりません。 - パラメータ:
error
- ツール・エラーの宛先、ユーザー・コード・エラー- 戻り値:
JavaShellToolBuilder
インスタンス
-
err
JavaShellToolBuilder err(PrintStream cmdErr, PrintStream userErr) エラー・チャネルを設定します。- 実装要件:
- どちらも
err
メソッドが呼び出されない場合、その動作はerr(System.err, System.err, System.err)
を呼び出すのと同じでなければなりません。 - パラメータ:
cmdErr
- ツールの起動先と致命的なエラーuserErr
- ユーザー・コード・エラー出力先。 たとえば、Oops
が実行されると、ユーザー・スニペットSystem.err.println("Oops")
がuserErrに移動します。- 戻り値:
JavaShellToolBuilder
インスタンス
-
persistence
JavaShellToolBuilder persistence(Preferences prefs) 入力履歴と保持されている設定を含む永続情報用の記憶機構を設定します。- 実装要件:
- どちらも
persistence
メソッドが呼び出されない場合は、ツールの標準永続化メカニズムを使用するように動作する必要があります。 - パラメータ:
prefs
- 永続的情報を取得して格納するために使用されるPreferences
のインスタンス- 戻り値:
JavaShellToolBuilder
インスタンス
-
persistence
JavaShellToolBuilder persistence(Map<String, String> prefsMap) 入力履歴と保持されている設定を含む永続情報用の記憶機構を設定します。- 実装要件:
- どちらも
persistence
メソッドが呼び出されない場合は、ツールの標準永続化メカニズムを使用するように動作する必要があります。 - パラメータ:
prefsMap
- 永続的情報を取得して格納するために使用されるMap
のインスタンス- 戻り値:
JavaShellToolBuilder
インスタンス
-
env
JavaShellToolBuilder env(Map<String, String> vars) 環境変数のソースを設定します。- 実装要件:
- このメソッドが呼び出されない場合、その動作は
env(System.getenv())
を呼び出すことと同等でなければなりません。 - パラメータ:
vars
- 環境変数名から値へのマップ- 戻り値:
JavaShellToolBuilder
インスタンス
-
locale
JavaShellToolBuilder locale(Locale locale) ロケールを設定します。- 実装要件:
- このメソッドが呼び出されない場合、その動作は
locale(Locale.getDefault())
を呼び出すことと同等でなければなりません。 - パラメータ:
locale
- ロケール- 戻り値:
JavaShellToolBuilder
インスタンス
-
promptCapture
JavaShellToolBuilder promptCapture(boolean capture) コマンド・キャプチャ・プロンプトを有効にするように設定します。- 実装要件:
- このメソッドが呼び出されない場合、その動作は
promptCapture(false)
を呼び出すことと同等でなければなりません。 - パラメータ:
capture
-true
の場合、基本プロンプトはENQ
文字であり、継続プロンプトはACK
文字です。 falseの場合、プロンプトはセット・アップまたはユーザー/set
コマンドで設定されたとおりです。- 戻り値:
JavaShellToolBuilder
インスタンス
-
interactiveTerminal
default JavaShellToolBuilder interactiveTerminal(boolean terminal) 入力および出力は、ANSIのエスケープ・コードを解釈できる対話型端末に接続されるようにするには、trueに設定します。 出力ストリームに送信される文字は端末によって解釈され、ユーザーに表示されます。出力に送信される文字の正確な順序と性質は不特定です。 出力を自動ツールで解析できる従来の単純な動作を指定するには、falseに設定します。 このJavaシェルの入力ストリームがSystem.in
の場合、この値は無視され、このメソッドでのtrue
の指定に似ていますが、System.in
に接続されている特定の端末に厳密に続きます。- 実装要件:
- このメソッドが呼び出されない場合、動作は
interactiveTerminal(false)
の呼出しと同じである必要があります。 このメソッドのデフォルト実装は、this
を返します。 - パラメータ:
terminal
-true
の場合、ANSIエスケープ・コードを解釈できる端末は、出力を解釈すると見なされます。false
の場合、より単純な出力が選択されます。- 戻り値:
JavaShellToolBuilder
インスタンス- 導入されたバージョン:
- 17
-
run
このインタフェースの他のメソッドで構成されたJavaシェル・ツールのインスタンスを実行します。 この呼び出しは破壊的ではなく、構成されたビルダーからこのメソッドの複数の呼び出しを行うことができます。 Javaシェル・ツールの終了コードは無視されます。- パラメータ:
arguments
- コマンドライン引数(オプションを含む)(存在する場合)- 例外:
Exception
- 予期しない致命的な例外
-
start
このインタフェースの他のメソッドで構成されたJavaシェル・ツールのインスタンスを実行します。 この呼び出しは破壊的ではなく、構成されたビルダーからこのメソッドの複数の呼び出しを行うことができます。- 実装要件:
- デフォルト実装は常にゼロを返します。 このインタフェースの実装は、このメソッドをオーバーライドして、終了ステータスを返します。
- パラメータ:
arguments
- コマンドライン引数(オプションを含む)(存在する場合)- 戻り値:
- ツールが明示的に(もしあれば)を終了した終了ステータス。成功した場合は0、失敗の場合は1
- 例外:
Exception
- 予期しない致命的な例外
-