1. 程式人生 > >使用 JDB 調試器

使用 JDB 調試器

bug 自定義 程序 設置 支持 自動隱藏 let host class

您可以使用調試 applet 或應用程序的 jdb 命令來調試 Servlet。

為了調試一個 Servlet,我們可以調試 sun.servlet.http.HttpServer,然後把它看成是 HttpServer 執行 Servlet 來響應瀏覽器端的 HTTP 請求。這與調試 applet 小程序非常相似。與調試 applet 不同的是,實際被調試的程序是 sun.applet.AppletViewer。

大多數調試器會自動隱藏如何調試 applet 的細節。同樣的,對於 servlet,您必須幫調試器執行以下操作:

  • 設置您的調試器的類路徑 classpath,以便它可以找到 sun.servlet.http.Http-Server 和相關的類。
  • 設置您的調試器的類路徑 classpath,以便它可以找到您的 servlet 和支持的類,通常是在 server_root/servlets 和 server_root/classes 中。

您通常不會希望 server_root/servlets 在您的 classpath 中,因為它會禁用 servlet 的重新加載。但是這種包含規則對於調試是非常有用的。它允許您的調試器在 HttpServer 中的自定義 Servlet 加載器加載 Servlet 之前在 Servlet 中設置斷點。

如果您已經設置了正確的類路徑 classpath,就可以開始調試 sun.servlet.http.HttpServer。可以在您想要調試的 Servlet 代碼中設置斷點,然後通過 Web 瀏覽器使用給定的 Servlet(http://localhost:8080/servlet/ServletToDebug)向 HttpServer 發出請求。您會看到程序執行到斷點處會停止。

使用 JDB 調試器