JDB - Sesión

Este capítulo describe cómo iniciar una sesión JDB de diferentes formas. El lanzamiento de JDB es la técnica que se utiliza con frecuencia para iniciar una sesión de JDB.

Hay dos formas diferentes de iniciar una sesión JDB:

  • Iniciando la sesión de JDB agregando la clase (nombre de la clase principal).
  • Adición de JDB para ejecutar JVM para iniciar la sesión.

Iniciar una sesión agregando una clase

El siguiente comando inicia una sesión de JDB:

Sintaxis

\>jdb <classname>

Ejemplo

Supongamos que tenemos una clase llamada TestClass. El siguiente comando inicia una sesión JDB desde TestClass.

\>jdb TestClass

Si sigue este comando, inicia una nueva máquina virtual Java con los parámetros especificados. A continuación, carga la clase y la detiene antes de ejecutar la primera instrucción de la clase.

Inicie una sesión agregando JDB a una JVM en ejecución

A continuación se muestra la sintaxis y el ejemplo para iniciar una sesión JDB agregando el JDB a una JVM en ejecución.

Sintaxis

La siguiente sintaxis es para la sesión JDB:

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

Ejemplo

Supongamos que el nombre de la clase principal es TestClassy JVM permite que JDB lo conecte más tarde. El siguiente es el comando para agregar JDB a JVM:

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

Ahora puede adjuntar la JDB a la JVM con el siguiente comando:

\> jdb -attach jdbconn

Note: Aquí el TestClass no se agrega al comando JDB, porque JDB está conectado a la VM en ejecución en lugar de lanzar una nueva.