java调试器jdb_Java调试教程-Java调试器(JDB)概述

Java调试教程-Java调试器(JDB)概述

作者:未知    文章来源:www.jspcn.net

发布日期:2005年01月19日

摘要

虽然现在有一些很好的调试工具,然而 Java 调试器 (JDB) 提供了一些优点。最重要的是 JDB 可以免费获取并且是平台独立的。其缺点是它只有命令行格式,一些开发人员认为这很原始,而且难以使用。一些 IDE 已经将 GUI 界面构建到 JDB 调试 API(如 Jikes)。JDB 是 JDK 安装的一部分。

(2002-08-25 14:09:58)

--------------------------------------------------------------------------------

By Wing, 出处:Laura Bennett

Java调试教程--Java调试器(JDB)概述

SUN Laura Bennett

什么是 JDB?

虽然现在有一些很好的调试工具,然而 Java 调试器 (JDB) 提供了一些优点。最重要的是 JDB 可以免费获取并且是平台独立的。其缺点是它只有命令行格式,一些开发人员认为这很原始,而且难以使用。一些 IDE 已经将 GUI 界面构建到 JDB 调试 API(如 Jikes)。JDB 是 JDK 安装的一部分。它在 Java 2 平台中得到了增强。有关详细信息,请参考关于 Java 调试 API 的章节。

JDB 的详细信息

可以为调试多个项目配置 JDB。JDB 将查找 user.home 目录中的 jdb.ini 配置文件。因此,对于每个项目,应该将 user.home 特性设置成指向另一个目录中的另一个 .ini 文件。可以输入以下命令来完成此操作:

jdb -J-Duser.home=. //Will look in the current directory for the

//jdb.ini file

jdb.ini 文件可以启动 JDB 会话,传递参数并关于系统的信息。以下是 jdb.ini 文件的一个示例。它包括了源路径列表中的 Java 平台源码,并将参数 34 传递给程序。然后它运行并在第 2 行停止,显示可用内存并等待进一步输入。

load MyTest

stop at MyTest:20

use c:/java;c:/jdk/src

run MyTest 34

memory

可以用 JDB 记录调试会话。通过在运行 JDB 的目录中创建文件 .agentLog,以启用日志记录。在 .agentLog 文件中,在第一行中放入要将会话信息写入其中的文件名。运行 jdb 命令时,将会看到 jdb 会话信息。日志文件可能包含以下内容:

-------- debug agent message log --------

[debug agent: adding Debugger agent to system thread list]

[debug agent: adding Breakpoint handler to system thread list]

[debug agent: no such class: MyApplication.main]

使用 JDB 和 Servletrunner 调试 Servlet 在下一章中,我们将完成一个练习使用 JDB 和 Servlet 引擎调试 Servlet。Tomcat 是与 JDB 对接得很好的 JSP/Servlet引擎。其它是 Windows 应用程序 .exe 文件的 Servlet 引擎不能以调试方式运行。然而,Tomcat 有一个启动脚本,该脚本允许您配置它以便调试。需要配置 TOMCAT_OPTS环境变量。 以调试方式运行引擎还会影响 CLASSPATH。使用 -Xbootclasspath 以及在JDK 2.0 中找到的 rt.jar 和 tools.jar 文件的路径来设置引导类路径。或者,可以使用 Servletrunner 进行调试。Servletrunner 是 JSDK 附带的应用程序。它让您可以不使用 Web 浏览器就运行 Servlet。Servletrunner 运行时就象 Java Web服务器,但又比 Java Web 服务器轻巧。它处理 Servlet 的HTTP 请求。Servletrunner 运行 java sun.servlet.http.HttpServer 命令。应该使用 HttpServer() 类来运行jdb 会话。

在调试 Servlet 时,请记住 Java Web 服务器和 Servletrunner 不会通过在 CLASSPATH 中包括 Servlet 目录来装入和卸装 Servlet。实际上,它们使用定制类装入器,而不是缺省系统类装入器。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值