下列特定语法在 Java 模式中有效。
访问了 class_name .field_name 指定的内存时停止执行。
在 line_number 处停止执行。
在 file_name 中的 line_number 处停止执行。
class_name 中的 field_name 值发生了更改时停止执行。
在加载任何类时停止执行。
装入 class_name 时停止执行。
在卸载任何类时停止执行。
卸载 class_name 时停止执行。
condition_expression 表示的条件的求值结果为 true 时停止执行。
输入了 class_name.method_name 且将要执行第一行时停止执行。如果未指定参数且重载方法,则会显示方法列表。
输入了 class_name.method_name 且将要执行第一行时停止执行。
对所有非成员方法 class_name.method_name 设置断点。
对所有非成员方法 class_name.method_name 设置断点。
抛出了 Java 异常时停止执行。
抛出了 type 类型的 Java 异常时停止执行。
其中:
class_name 是 Java 类的名称,可以使用包路径(使用句点 (.) 作为限定符,例如 test1.extra.T1.Inner),也可以使用完整路径名(前面加磅符号 (#), 并使用斜线 (/) 和美元符号 ($) 作为限定符,例如 #test1/extra/T1$Inner)。如果使用 $ 限定符,请使用引号将 class_name 引起来。
condition_expression 可以是任何表达式,但其求值结果必须为整型。
field_name 是类中字段的名称。
file_name 是文件名。
line_number 是源代码行的编号。
method_name 是 Java 方法的名称。
mode 指定内存访问模式。可由以下一个或所有字母组成:
已读取指定地址处的内存。
已写入内存。
mode 也可以包含:
访问前停止进程。
程序计数器将指向违例指令。
parameters 是方法的参数。
type 是 Java 异常的类型。类型可以是 -unhandled 或 -unexpected。
下列修饰符在 Java 模式中有效:
只有在 condition_expression 的求值结果为 true 时,才会发生指定的事件。
从 0 开始,每次发生事件时,计数器的计数便会增加。达到 number 时,执行便停止,且计数器重置为 0。
从 0 开始,每次发生事件时,计数器的计数便会增加。执行没有停止。
创建发生事件时会删除的临时断点。
创建禁用状态的断点。
有关设置机器级断点的信息,另请参见stopi 命令。
有关所有事件的列表和语法,请参见设置事件规范。