【Java】使用IDE開發工具遠程調試Java代碼


概述

  服務端程序運行在一台遠程服務器上,我們可以在本地服務端的代碼(前提是本地的代碼必須和遠程服務器運行的代碼一致)中設置斷點,每當有請求到遠程服務器時時能夠在本地知道遠程服務端的此時的內部狀態

測試項目

  創建方式參考:【Java】Maven Tomcat插件使用

  項目中新增了一個測試的Servlet,如下:

1 public class HelloWorldServlet extends HttpServlet {
2 
3     @Override
4     protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
5 
6         System.out.println("-------HelloWorldServlet--------");
7         resp.getWriter().print("SUCCESS");
8     }
9 }
View Code

 

服務端使用特定JVM參數運行代碼

  要讓遠程服務器運行的代碼支持遠程調試,則啟動的時候必須加上特定的JVM參數,這些參數是:

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

  其中5005是調試端口

本地連接遠程服務器debug端口

  使用IDEA為例

  1、服務端(本例也是在同一台電腦上運行)運行java項目,命令:java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar test-webapp-1.0-SNAPSHOT-war-exec.jar

  2、本地IDEA配置
    
    

  3、配置完成,連接調試
    
    控制台輸出信息,顯示已連接
    

  4、在Servlet中,增加斷點即可調試。
    

 

  使用Eclipse為例

  1、服務端(本例也是在同一台電腦上運行)運行java項目,命令:java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar test-webapp-1.0-SNAPSHOT-war-exec.jar

  2、本地IEclipse配置

       a、

    b、

    c、 

  3、配置完成,連接調試,選擇得bug即可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM