JDB - 会议


本章介绍如何以不同方式启动 JDB 会话。JDB 启动是启动 JDB 会话的常用技术。

有两种不同的方式来启动 JDB 会话:

  • 通过添加类(主类名)来启动 JDB 会话。
  • 将 JDB 添加到正在运行的 JVM 以启动会话。

通过添加课程来启动会话

以下命令启动 JDB 会话:

句法

\>jdb <classname>

例子

假设我们有一个名为TestClass的类。以下命令从 TestClass 启动 JDB 会话。

\>jdb TestClass

如果您执行此命令,它将使用任何指定的参数启动一个新的 Java VM。此后,它加载该类并在执行该类的第一条语句之前停止它。

通过将 JDB 添加到正在运行的 JVM 来启动会话

下面给出的是通过将 JDB 添加到正在运行的 JVM 来启动 JDB 会话的语法和示例。

句法

以下语法适用于 JDB 会话:

-agentlib:jdwp=transport=dt_shmem,address=,server=y,suspend=n

例子

我们假设主类名为TestClass,并且 JVM 允许 JDB 稍后连接它。以下是将JDB添加到JVM的命令:

\>java
-agentlib:jdwp=transport=dt_shmem,address=jdbconn,server=y,suspend=n TestClass

现在您可以使用以下命令将 JDB 连接到 JVM:

\> jdb -attach jdbconn

注意:此处,TestClass未添加到 JDB 命令中,因为 JDB 连接到正在运行的 VM,而不是启动新的 VM。