使用Netbeans调试应用程序
2009-04-07 22:34
调试是检查应用程序是否存在错误的过程。您可以使用以下方法进行调试:在代码中设置断点和监视,然后在调试器中运行代码。您还可以通过逐行执行代码并检查应用程序状态来查找任何问题。
IDE 使用 Sun Microsystems JPDA 调试器来调试程序。在启动调试会话时,所有相关的调试器窗口都将自动出现在屏幕的底部。您可以调试整个项目、任何可执行类以及任何 JUnit 测试。IDE 还允许您通过将调试器连接到应用程序进程来调试在远程
计算机上运行的应用程序。
运行或调试 Web 应用程序、
JSP 页或 Servlet 时,您可以使用 HTTP 监视器来监视数据流。缺省情况下,将出现 HTTP 监视器,该监视器收集有关 Servlet 引擎处理的 HTTP 请求的数据。对于引擎处理的每个 HTTP 请求,监视器都会记录关于传入请求的数据、保留在服务器上的数据状态和 Servlet 上下文。您可以查看数据、为将来的会话存储数据、重新显示和编辑以前的请求。有关 HTTP 监视器的详细信息,请在主菜单中选择“帮助”>“帮助内容”。
对于自由格式项目,您必须为“调试项目”命令编写一个 Ant 目标。您还可以编写用于调试特定文件的目标,并将这些目标映射到项目的命令。
在此部分中,您将了解以下内容:
基本调试
启动调试会话
调试器窗口
逐步执行代码
使用断点
设置断点
设置断点条件
定制断点输出
设置监视
基本调试
在此部分,我们将使用一个简单的示例来说明如何启动调试会话、如何以手动方式逐步执行代码以及如何监视变量和方法调用。我们将在后面的部分介绍更高级的功能,如设置断点和监视。
此部分的示例是 Array Fill 应用程序。此应用程序非常简单。它将创建一个 sampleBeans 数组,每个 Bean 包含两个属性:firstName 和 lastName。然后,它将为每个 Bean 的属性赋值并输出这些值。
首先需要运行该应用程序以确定它是否会抛出任何异常。下载并提取 ArrayFill 示例的 .zip 归档文件 (。要在 IDE 中打开 ArrayFill 项目,请按 CTRL-Shift-O 组合键找到提取的 ArrayFill 文件夹,然后单击“打开项目文件夹”。将在 IDE 中打开 ArrayFill 项目,并可在“项目”窗口中看到该项目的逻辑结构。netbeans.org/files/documents/4/446/ArrayFill.zip)
在“项目”窗口中,展开“源包”下的 arrayfill 包。arrayfill 包包含两个类:ArrayFill 和 SampleBean。右键单击 ArrayFill.java,然后按 Shift-F6 组合键执行它。在“输出”窗口中出现的输出应该与如下所示类似:
java.lang.NullPointerException at arrayfill.ArrayFill.loadNames(arrayFill.java:27) at arrayfill.ArrayFill.main(ArrayFill.j
ava:34) Exception in thread "main"
Java Result: 1
启动调试会话
在 IDE 中启动调试会话时,IDE 将编译所调试的文件,在调试模式下运行它们,并在调试器窗口中显示调试器输出。要启动调试会话,请选择要调试的文件,然后从“运行”菜单中选择以下某个命令:
调试主项目 (F5)。运行主项目,直至遇到第一个断点。
步入 (F7)。开始运行主项目的主类,并在第一条可执行语句处停止。
运行至光标 (F4)。启动调试会话,使应用程序运行至源代码编辑器中的光标位置,然后暂停应用程序。
如果在 IDE 中打开了多个项目,请确保使用以下方法将 Array Fill 设置为主项目:在“项目”窗口中右键单击 ArrayFill 节点,然后从上下文菜单中选择“设置主项目”。按 F7 键步入主项目的主类。如果未设置项目的主类,则 IDE 将提示您设置它。然后,IDE 将在源代码编辑器中打开文件,显示“输出”窗口和调试器窗口,并刚好在 main 方法内部停止。
调试器窗口
让我们简单了解一下调试器窗口。调试器窗口在每次启动调试会话时自动打开,并在完成会话时自动关闭。缺省情况