Depuração remota de um aplicativo Java

Adicione o seguinte à linha de comando java, depois de ‘java’, mas antes de argumentos específicos do aplicativo

-Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n

Se você executar seu aplicativo da seguinte maneira:

java -jar app.jar

Se tornaria

java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n -jar app.jar

Explicação dos parâmetros (de http://docs.oracle.com/cd/E13150_01/jrockit_jvm/jrockit/jrdocs/refman/optionX.html )

-Xdebug ativa recursos de depuração na JVM

-Xrunjdwp carrega a implementação de referência JPDA do JDWP

  • server = y significa ouvir um aplicativo de depuração para anexar
  • transport-dt_socket é o nome do transporte a ser usado na conexão com o depurador
  • endereço = 8000 significa ouvir uma conexão neste endereço (sem host = esta porta em interfaces adicionais)
  • suspender = n significa não esperar que um depurador se conecte

As opções mais relevantes são endereço, se você precisar alterar a porta, e suspender, se você quiser que o processo java espere que você conecte o depurador antes do início da execução

Ao depurar uma ferramenta de terceiros, a linha de comando java geralmente está em um script. Alguns deles são descritos abaixo

Formiga

Definir a formiga ambiente variáveis opta por
“-Xdebug -Xrunjdwp: server = y, o transporte = dt
socket, address = 8000, suspender = n”
antes de executar formiga.

Você também pode editar os scripts $ ANT HOME / bin / ant ou% ANT HOME% bin ant.bat. Procure as linhas que fazem referência a JAVACMD para as linhas de comando java usadas

Tomcat

Edite $ CATALINA HOME / bin / startup.sh / $ CATALINA HOME bin startup.bat

Procure as linhas que fazem referência a EXECUTABLE start e altere-as para EXECUTBLE jpda start

As variáveis ​​de ambiente JPDA TRANSPORT, JPDA ADDRESS e JPDA SUSPEND podem ser usadas para configuração (os padrões são dt socket, 8000 e n respectivamente). Veja $ CATALINA HOME / bin / catalina.sh / $ CATALINA HOME bin catalina.bat para mais informações

Mais para seguir quando eu precisar deles