JDB - Sessão

Este capítulo descreve como iniciar uma sessão JDB de maneiras diferentes. O lançamento de JDB é a técnica freqüentemente usada para iniciar uma sessão de JDB.

Existem duas maneiras diferentes de iniciar uma sessão JDB:

  • Iniciando a sessão JDB adicionando classe (nome da classe principal) a ela.
  • Incluindo JDB para executar JVM para iniciar a sessão.

Inicie uma Sessão Adicionando Classe

O seguinte comando inicia uma sessão JDB:

Sintaxe

\>jdb <classname>

Exemplo

Vamos supor que temos uma classe chamada TestClass. O comando a seguir inicia uma sessão JDB a partir do TestClass.

\>jdb TestClass

Se você seguir este comando, ele iniciará um novo Java VM com quaisquer parâmetros especificados. Depois disso, ele carrega a classe e a interrompe antes de executar a primeira instrução da classe.

Inicie uma sessão adicionando JDB a uma JVM em execução

A seguir é fornecida a sintaxe e o exemplo para iniciar uma sessão JDB adicionando o JDB a uma JVM em execução.

Sintaxe

A seguinte sintaxe é para a sessão JDB:

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

Exemplo

Vamos supor que o nome da classe principal seja TestClasse o JVM permite que o JDB o conecte posteriormente. A seguir está o comando para adicionar JDB à JVM:

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

Agora você pode anexar o JDB ao JVM com o seguinte comando:

\> jdb -attach jdbconn

Note: Aqui o TestClass não é adicionado ao comando JDB, porque JDB está conectado à VM em execução em vez de lançar uma nova.