模块 jdk.jshell

接口 JavaShellToolBuilder


public interface JavaShellToolBuilder
配置和运行 Java shell 工具实例的接口。使用静态 builder() 方法创建构建器的实例。可以选择使用配置方法配置此构建器。所有配置方法都返回用于链式初始化的构建器实例。所有配置方法都有合理的默认值,如果它们未被调用,将使用这些默认值。在对配置方法进行零次或多次调用后,该工具将通过调用 run(java.lang.String...) 启动。
自从:
9
  • 方法详情

    • builder

      static JavaShellToolBuilder  builder()
      创建用于启动 JDK jshell 工具的构建器。
      返回:
      可用于配置和启动 jshell 工具的构建器
    • in

      设置输入通道。
      实现要求:
      如果不调用此方法,行为应等同于调用 in(System.in, null)
      参数:
      cmdIn - 命令输入源
      userIn - 运行用户代码的输入源,或 null 从 cmdIn 中提取用户输入
      返回:
      JavaShellToolBuilder 实例
    • out

      设置输出通道。与 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 - 用户代码输出的目的地。例如,用户代码段 System.out.println("Hello") 在执行时 Hello 转到 userOut。
      返回:
      JavaShellToolBuilder 实例
    • err

      设置错误通道。与 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 - 用户代码错误输出的目的地。例如,用户代码段 System.err.println("Oops") 在执行时 Oops 转到 userErr。
      返回:
      JavaShellToolBuilder 实例
    • persistence

      JavaShellToolBuilder  persistence(Preferences  prefs)
      设置持久信息的存储机制,包括输入历史和保留设置。
      实现要求:
      如果 persistence 方法都没有被调用,行为应该是使用该工具的标准持久性机制。
      参数:
      prefs - Preferences 的实例,用于检索和存储持久信息
      返回:
      JavaShellToolBuilder 实例
    • persistence

      JavaShellToolBuilder  persistence(Map <String ,String > prefsMap)
      设置持久信息的存储机制,包括输入历史和保留设置。
      实现要求:
      如果 persistence 方法都没有被调用,行为应该是使用该工具的标准持久性机制。
      参数:
      prefsMap - 用于检索和存储持久信息的 Map 实例
      返回:
      JavaShellToolBuilder 实例
    • env

      设置环境变量的来源。
      实现要求:
      如果未调用此方法,则行为应等同于调用 env(System.getenv())
      参数:
      vars - 环境变量名称到值的映射
      返回:
      JavaShellToolBuilder 实例
    • locale

      JavaShellToolBuilder  locale(Locale  locale)
      设置locale。
      实现要求:
      如果未调用此方法,则行为应等同于调用 locale(Locale.getDefault())
      参数:
      locale - locale
      返回:
      JavaShellToolBuilder 实例
    • promptCapture

      JavaShellToolBuilder  promptCapture(boolean capture)
      设置以启用命令捕获提示重写。
      实现要求:
      如果不调用此方法,则行为应等同于调用 promptCapture(false)
      参数:
      capture - 如果是 true,则基本提示是 ENQ 字符,继续提示是 ACK 字符。如果为 false,则提示与设置或用户 /set 命令的设置相同。
      返回:
      JavaShellToolBuilder 实例
    • interactiveTerminal

      default JavaShellToolBuilder  interactiveTerminal(boolean terminal)
      设置为 true 以指定输入和输出连接到可以解释 ANSI 转义码的交互式终端。发送到输出流的字符假定由终端解释并显示给用户,发送到输出的字符的确切顺序和性质是未指定的。设置为 false 以指定一个遗留的更简单的行为,其输出可以被自动工具解析。当此 Java Shell 的输入流为 System.in 时,该值将被忽略,其行为类似于在此方法中指定 true,但更接近于连接到 System.in 的特定终端。
      实现要求:
      如果未调用此方法,则行为应等同于调用 interactiveTerminal(false) 。此方法的默认实现返回 this
      参数:
      terminal - 如果是 true ,则假设可以解释 ANSI 转义码的终端解释输出。如果 false ,则选择更简单的输出。
      返回:
      JavaShellToolBuilder 实例
      自从:
      17
    • run

      void run(String ... arguments) throws Exception
      按照此接口中其他方法的配置运行 Java shell 工具的实例。此调用不是破坏性的,可以从已配置的构建器中多次调用此方法。来自 Java shell 工具的退出代码将被忽略。
      参数:
      arguments - 命令行参数(包括选项),如果有的话
      抛出:
      Exception - 意外的致命异常
    • start

      default int start(String ... arguments) throws Exception
      按照此接口中其他方法的配置运行 Java shell 工具的实例。此调用不是破坏性的,可以从已配置的构建器中多次调用此方法。
      实现要求:
      默认实现始终返回零。此接口的实现应重写此方法,返回退出状态。
      参数:
      arguments - 命令行参数(包括选项),如果有的话
      返回:
      工具明确退出的退出状态(如果有),否则 0 表示成功或 1 表示失败
      抛出:
      Exception - 意外的致命异常