# jdb 使用

java jdb断点

Java JDB（Java Debugger）是Java开发工具包的一部分，它是一个命令行调试器，允许开发者在程序执行期间监视和修改程序状态。

在Java程序中设置断点，你可以使用JDB的`<span class="editor-theme-code">stop at</span>`或`<span class="editor-theme-code">stop in</span>`命令。以下是如何使用这些命令设置断点的例子：

1. 启动JDB，并指定要调试的类：

```shell
1、jdb YourClassName
# 分包使用
2、jdb -classpath ./lib
3、执行 run -jar jar表名
```

2. 在JDB提示符下，使用`<span class="editor-theme-code">stop at</span>`命令设置断点，例如在某个特定的行号上：

```shell
stop at YourClassName.java:42
```

或者在某个特定的方法上：

```shell
stop in com.zhihuiqd.jhgl.logic.InvoiceLogic.delete
```

这会在执行到指定行或方法时暂停程序。

3. 一旦设置了断点，使用`<span class="editor-theme-code">cont</span>`命令继续程序的执行：

```shell
cont
```

4. 当程序在断点处暂停时，你可以使用其他JDB命令来检查变量值、线程状态等。例如：

```shell
locals
```

显示当前堆栈帧的局部变量。

```shell
step
```

执行下一行代码，并进入任何方法调用内部。

```shell
next
```

执行下一行代码，但不进入任何方法调用内部。

```shell
eval expression
```

计算表达式的值。

5. 当你完成调试后，可以使用`<span class="editor-theme-code">quit</span>`命令退出JDB：

```shell
quit
```

请注意，JDB是一个较旧的调试工具，现代IDE如IntelliJ IDEA和Eclipse通常带有更先进的调试工具，建议在日常开发中使用这些IDE的内置调试功能。