Depuración remota de IntelliJ IDEA

1. Agregar control remoto: 

 2. Proyecto en ejecución del servidor

   2.1 paquete jar java -jar start

PD:

     El servidor aparece Escuchando transporte dt_socket en la dirección: 5005;

    La depuración local inicia el proyecto y aparece la consola Conectado a la máquina virtual de destino, dirección: '192.168.160.130:5005', transporte: 'socket'; significa que es posible realizar una copia remota.

Visita del navegador http://192.168.160.130:8080/demo/

El código local ingresa al punto de interrupción:

    2.2 Comienza el paquete de guerra Tomcat

   Utilice el comando vim catalina.sh para editar catalina.sh:

PD:

   De forma predeterminada, Tomcat solo permite la depuración local. Cambiar el host local predeterminado: 8000 a 0.0.0.0:5005 significa que cualquier IP se puede depurar de forma remota.

[root@localhost bin]# vim catalina.sh
[root@localhost bin]# ./catalina.sh jpda start
Using CATALINA_BASE:   /usr/local/apache-tomcat-8.5.53
Using CATALINA_HOME:   /usr/local/apache-tomcat-8.5.53
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.53/temp
Using JRE_HOME:        /usr/local/jdk1.8.0_11
Using CLASSPATH:       /usr/local/apache-tomcat-8.5.53/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.53/bin/tomcat-juli.jar
Tomcat started.
[root@localhost bin]#

Ver el archivo de registro de Tomcat catalina.out:

21-Mar-2020 20:39:11.467 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
21-Mar-2020 20:39:11.484 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 6862 ms
2020-03-21 20:39:20.214  INFO 70337 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2020-03-21 20:39:20.219  INFO 70337 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 4 ms
Listening for transport dt_socket at address: 5005

Se puede ver que Escuchando el transporte dt_socket en la dirección: 5005.

3. Depuración remota, no abuses

      Los desarrolladores a menudo usan la función de depuración local. A veces hay escenarios en los que la máquina en el entorno diario necesita depurarse de forma remota. En este caso, puede haber varias personas que usan la máquina al mismo tiempo. El fenómeno a menudo ocurre cuando una persona se depura de forma remota. Esta máquina ha provocado que otros esperen. Otros también están estupefactos, sin saber lo que le pasó a esta máquina ...

Como se muestra en la figura, las cuatro pestañas deben visitar http://192.168.160.130:8080/demo/ . Las cuatro páginas siguen girando y esperando. . .

Cómo minimizar el impacto en otros causado por la depuración remota. Esto tiene algunos requisitos para los operadores de depuración.

 Si el código es el siguiente:

    @GetMapping(value = "/{id}")
    public String test1(@PathVariable Integer id) {
        return "hello world======>"+id;
    }

 La configuración es la siguiente:

Visite el navegador nuevamente, esta vez abra cuatro páginas, visite respectivamente: http://192.168.160.130:8080/demo/1 , http://192.168.160.130:8080/demo/2 , http://192.168.160.130 : 8080 / demo / 3 , http://192.168.160.130:8080/demo/4 . Como resultado, solo la página http://192.168.160.130:8080/demo/2 es refrescante, es decir, solo id == 2 Entró en un punto de interrupción, reduciendo el bloqueo de otros hilos.

 

187 artículos originales publicados · Me gusta 146 · Visita 490,000+

Supongo que te gusta

Origin blog.csdn.net/qq_37495786/article/details/105024440
Recomendado
Clasificación