- java.lang.Object
-
- jdk.jshell.execution.DirectExecutionControl
-
- jdk.jshell.execution.RemoteExecutionControl
-
- 实现的所有接口
-
AutoCloseable
,ExecutionControl
public class RemoteExecutionControlextends DirectExecutionControlimplements ExecutionControl
远程代理在执行过程中运行(与主JShell进程分开)。 此代理通过主JShell进程在套接字上加载代码,执行代码和其他misc,DirectExecutionControl
的 Specialization,它增加了由外部进程控制的停止支持。 旨在与JdiDefaultExecutionControl
一起使用 。- 从以下版本开始:
- 9
-
-
嵌套类汇总
-
Nested classes/interfaces declared in interface jdk.jshell.spi.ExecutionControl
ExecutionControl.ClassBytecodes, ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException, ExecutionControl.ExecutionControlException, ExecutionControl.InternalException, ExecutionControl.NotImplementedException, ExecutionControl.ResolutionException, ExecutionControl.RunException, ExecutionControl.StoppedException, ExecutionControl.UserException
-
-
构造方法摘要
构造方法 构造器 描述 RemoteExecutionControl()
使用默认类加载创建实例。RemoteExecutionControl(LoaderDelegate loaderDelegate)
创建一个实例,将加载程序操作委托给指定的委托。
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 static void
main(String[] args)
启动代理程序,通过命令行参数中指定的套接字连接到JShell-core。void
redefine(ExecutionControl.ClassBytecodes[] cbcs)
重新定义远程端的处理只是注册重新定义的类-
声明方法的类 jdk.jshell.execution.DirectExecutionControl
classesRedefined, clientCodeEnter, clientCodeLeave, findClass, invoke, stop, throwConvertedInvocationException, throwConvertedOtherException, valueString
-
声明方法的类 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
声明方法的接口 jdk.jshell.spi.ExecutionControl
addToClasspath, close, extensionCommand, invoke, load, stop, varValue
-
-
-
-
构造方法详细信息
-
RemoteExecutionControl
public RemoteExecutionControl(LoaderDelegate loaderDelegate)
创建一个实例,将加载程序操作委托给指定的委托。- 参数
-
loaderDelegate
- 处理加载类的委托
-
RemoteExecutionControl
public RemoteExecutionControl()
使用默认类加载创建实例。
-
-
方法详细信息
-
main
public static void main(String[] args) throws 异常
启动代理程序,通过命令行参数中指定的套接字连接到JShell-core。- 参数
-
args
- 标准命令行参数,期望是套接字号是唯一的参数 - 异常
-
异常
- 任何意外的异常
-
redefine
public void redefine(ExecutionControl.ClassBytecodes[] cbcs) throws ExecutionControl.ClassInstallException, ExecutionControl.NotImplementedException, ExecutionControl.EngineTerminationException
重新定义远程端的处理只是注册重新定义的类- Specified by:
-
redefine
在接口ExecutionControl
- 参数
-
cbcs
- 要重新定义的类名和字节码 - 异常
-
ExecutionControl.ClassInstallException
- 重新定义类时发生异常,部分或全部未重新定义 -
ExecutionControl.NotImplementedException
- 如果没有实现 -
ExecutionControl.EngineTerminationException
- the execution engine has terminated
-
-