No processo de depuração do código, para melhor localizar e resolver o problema, às vezes precisamos usar métodos de depuração remota. Neste artigo, vamos dar uma olhada em como usar o Intellij Idea para depurar o Tomcat remoto.
Primeiro, configure o controle remoto:
Conforme mostrado na figura acima, clique em Editar configurações para inserir a seguinte interface:
Conforme mostrado na figura acima, inserimos a interface de configurações de execução/depuração e clique em + no canto superior esquerdo e selecionamos o controle remoto:
Como mostrado na figura acima, existem duas categorias: Mark 2 e Mark 3. Para Marcos 2,
Nota 2: Método de transmissão, o padrão é o soquete;
Para o rótulo 3,
Nota 3: Modo de depuração, padrão a anexar;
Em seguida, copie a anotação 1, os parâmetros da linha de comando que o Intellij Idea produz automaticamente e importe -o para o arquivo de configuração do Tomcat. Tomando o sistema Linux como exemplo, a declaração de importação é:
A cópia do código é a seguinte:
exportar java_OPTS = '-agenteLib: jdwp = transport = dt_socket, servidor = y, suspender = n, endereço = 5005'
Se for um sistema Windows, a declaração de importação é:
A cópia do código é a seguinte:
Definir java_OPTS = -AGentLib: jdwp = transport = dt_socket, server = y, suspender = n, endereço = 5005
A diferença entre os dois são as diferentes palavras -chave da declaração de importação e se existem aspas. As palavras -chave de importação do sistema Linux são exportadas e o Windows está definido; O valor de importação do Linux precisa ser incluído em cotações únicas, enquanto o Windows não.
Em seguida, modifique o arquivo Catalina.sh no diretório da bin do tomcat (se for um sistema Windows, modifique o arquivo catalina.bat) e adicione a instrução Importar acima a este arquivo:
Nesse ponto, a configuração do Intellij Idea Remote Debugging Tomcat foi concluída e as etapas subsequentes da depuração são feitas de acordo com as técnicas normais de depuração!
++++++ Off Topic: Eu sou um grande ovo de Páscoa ++++++
Aqui, assumimos que o endereço IP do servidor é 10.11.12.39 e o número da porta é 16203. Depois que a configuração é concluída, entramos no modo de depuração. Se a conexão for bem -sucedida, o seguinte prompt aparecerá:
Além disso, se estivermos depurando em vários sistemas, precisamos apenas configurar o controle remoto no sistema que queremos depurar, definir um ponto de interrupção, iniciar o modo de depuração e executar o programa em que o serviço começa a entrar no ponto de interrupção que definimos. Além disso, se configurarmos o controle remoto localmente e associá -lo a um tomcat, no modo de depuração, todas as funções envolvendo o código em que o ponto de interrupção está localizado entrará no ponto de interrupção que definimos.
Por exemplo, para o Tomcat A no servidor, vários sistemas usam esse tomcat, como subsistema de pedidos, subsistema de contas, subsistema de roteamento etc. e vários sistemas se chamam. Se o subsistema de pedidos ajustar o subsistema da conta e o subsistema da conta ajustar o subsistema de roteamento, quando configurarmos o controle remoto nesses três subsistemas e consultar as informações da conta do comerciante no subsistema de ordem, definimos um ponto de interrupção no subsistema da conta; No subsistema da conta, clicamos em outros serviços subjacentes para consultar o saldo da conta do comerciante etc.) e, depois de iniciar o modo de depuração, acionar a função de consultar as informações da conta do comerciante no subsistema de pedidos por meio de testes de unidade ou operações de página, entraremos no ponto de interrupção dos três subsistemas acima.
Além disso, depois de configurarmos a depuração remota, mesmo que outros iniciem serviços relacionados, inseriremos nosso ponto de interrupção e seremos afetados pelo ponto de interrupção que definimos. O serviço continuará sendo executado somente depois de executar o teste. Finalmente, a função de depuração remota é realmente poderosa. Faça um bom uso de depuração remota e fique longe dos insetos!
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.