Adjunte el depurador Intellij-IDEA a un proceso en ejecución de Java

¿Es posible adjuntar el depurador Intellij-IDEA a un proceso java en ejecución?

¡Sí! Así es como lo configuraste.

Ejecutar configuración

Crear una configuración de ejecución remota:

  1. Ejecutar -> Editar configuraciones …
  2. Haga clic en “+” en la esquina superior izquierda
  3. Seleccione la opción “Remoto” en el panel de la izquierda
  4. Elija un nombre (yo llamé a mi “depuración remota”)
  5. Haga clic en “Aceptar” para guardar:

enter image description here

Opciones de JVM

La configuración anterior proporciona tres campos de solo lectura. Estas son opciones que le indican a la JVM que abra el puerto 5005 para la eliminación remota de errores cuando ejecuta su aplicación. Agregue el apropiado a las opciones de JVM de la aplicación que está depurando. Una manera en que podrías hacer esto sería así:

export JAVA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005" 

Pero depende de cómo ejecute su aplicación. Si no está seguro de cuál de los tres se aplica a usted, comience con el primero y baje por la lista hasta que encuentre el que funciona.

Puede cambiar suspend=n a suspend=y para forzar a su aplicación a esperar hasta que se conecte con IntelliJ antes de que se inicie. Esto es útil si el punto de interrupción que desea alcanzar se produce al iniciar la aplicación.

Depurar

Inicie su aplicación como lo haría normalmente, luego en IntelliJ seleccione la nueva configuración y presione ‘Depurar’.

enter image description here

IntelliJ se conectará a la JVM e iniciará la depuración remota.

Ahora puede depurar la aplicación agregando puntos de interrupción a su código donde lo desee. El resultado de la aplicación seguirá apareciendo donde lo hizo antes, pero sus puntos de interrupción aparecerán en IntelliJ.

Es posible, pero debe agregar algunas banderas JVM cuando inicie su aplicación.

Debe agregar la configuración de depuración remota: Editar configuración -> Remoto.

A continuación, encontrará en los parámetros de la ventana de diálogo que debe agregar a la ejecución del progtwig, como:

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

Luego, cuando se inicia su aplicación, puede adjuntar su depurador. Si desea que su aplicación espere hasta que el depurador esté conectado, simplemente cambie la bandera de suspensión a y ( suspend=y )

Además, no olvide que debe agregar el indicador “-Xdebug” en la aplicación JAVA_OPTS si desea conectarse en modo de depuración.

en Android Studio o idea

  1. Configurar la aplicación se depurará, abra Editar configuraciones

agregue “VM Options” Config “-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005” recordar “la dirección”

enter image description here

  1. Config Remote Debugger si no sale, haga clic en + para agregar

especifique “Puerto” igual que en el Paso 1 “dirección” enter image description here