`
chenhaodejia
  • 浏览: 114549 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用Eclipse调试Java程序代码

阅读更多
当Eclipse首次启动时进入的是资源透视图,在这个透视图中可以管理项目、文件夹、文件和其它资源,按照Eclipse的说法,这些面板叫做视图,一套完整的视图叫做透视图,在资源透视图中,你可以使用左上方的视图(导航视图)导航和创建资源。
在Eclipse中做事之前,如创建Java程序,需创建一个Java项目,创建Java项目的步骤如下:
1、在导航视图上点击右键,在弹出的上下文菜单中选择新建项目;
2、在新建项目对话框中,Eclipse提供了项目选项:Java,插件开发等。因此你想要创建一个Java项目,在对话框左边选择Java;
3、在对话框右边选择Java项目,如果你还安装了其它Java插件开发包,在这里也会一起列出来(如EJB,Servlet等),Eclipse默认安装的JDT仅支持标准Java应用程序,因此你必须选择Java项目选项;
4、点击下一步进入新建项目向导对话框;
5、首先给项目命一个名字,因为是一个简单的“Hello, world”例子,因此这里我输入“Hello”,点击下一步,设置构建Java项目的设置选项,对于这个项目你不需要做任何修改即可;
6、点击完成;
7、Eclipse此时会提示你这种项目是和Java透视图关联的,并询问你是否切换到Java透视图,选择是。
创建Java类
当你创建好Java项目后就可以开始创建Java程序了,尽管不是非得这么做,但这样可以将你的Java类组织到包中,这是一次很好的实践,通常使用域名做为包名,这样可以减少名字冲突的可能性,如果你没有注册域名,也可以使用任何方便的,唯一的hoc名,我在这里使用org.eclipseguide,项目名是hello,因此包的全名就是org.eclipseguide.hello。
按照下列步骤创建Java程序:
1、在项目上点击右键,选择New.Class弹出新建Java类向导;
2、第一个字段区域“源文件夹”默认是项目的文件夹,保持默认值;
3、在包字段区域输入org.eclipseguide.hello;
4、在类名字段区域输入HelloWorld;
5、在“Which Method Stubs Would You Like to Create?”区域下,选中public static void main(String[] args),新建Java类的对话框如图1所示。
Java代码 src="http://images.51cto.com/files/uploadimg/20090603/181139878.jpg" width=480>
图- 1 使用新建Java类向导创建HelloWorld类
6、点击完成,新建java类向导将会为程序包创建一系列目录,HelloWorld.java源文件将会放在这个包名下面。
自动创建的代码包括一个main( )方法,你可以向里面添加任何功能,如打印你的Hello, world!,为了使调试变得更有趣,你需要添加一个循环打印的方法,在Eclipse中修改自动生成的代码,如下:
public class HelloWorld {

public static void main(String[] args) {
say("Hello, world!");
}
public static void say(String msg) {
for (int i = 0; i < 3; i++) {
System.out.println(msg);
}
}
}
运行Java程序
现在你已经可以运行这个Java程序了,在运行Java程序时需要考虑多个事情,包括Java运行环境,是否需要命令行参数,如果不知一个类有main( )函数究竟该使用哪一个,在Eclipse中正确启动一个Java程序的方法是从Eclipse菜单中选择“运行运行”,此时会弹出一个对话框,让你配置启动选项,在运行一个Java程序前,你需要创建一个启动配置或从现有配置中选择一个。
对于大多数简单的Java程序而言,你不需要指定启动配置,因此你可以使用更简单的方法启动程序,首先确保编辑器中HelloWorld源代码是全部选中的,然后:
1、从Eclipse菜单中选择运行以...运行Java应用程序;
2、因为你已经对Java程序做出了修改,Eclipse会提示你在运行Java程序前先保存一下,点击确定;
3、任务视图切换到控制台视图,显示程序输出,如图2所示。
Java代码 src="http://images.51cto.com/files/uploadimg/20090603/181156675.jpg" width=480>
图- 2 Eclipse控制台视图显示HelloWorld程序运行输出
你可能疑惑为什么没有单独的步骤将.java文件编译成.class文件,这是因为Eclipse JDT包含了一个增量的编译器来评估你输入的Java程序代码,它可以高亮显示语法错误和不完整的引用,和其它Eclipse友好的特性一样,如果你觉得这个功能对你没用,你完全可以关闭它,如果编译成功,.class文件会在保存源文件时同步保存。
调试Java程序
在Eclipse中交互式运行代码是其最强大的特性之一,使用JDT调试器,你可以逐行执行你的Java程序,检查程序不同位置变量的值,这个过程在定位代码中的问题时非常有用。
为了准备调试,你需要在代码中设置一个断点先,以便让调试器暂停执行允许你调试,否则,程序会从头执行到尾,你就没有机会调试了。为了设置一个断点,在编辑器左边灰色边缘双击,这里将say()函数位置设置为断点,此时将会显示一个蓝色的小点,表示一个活动的断点。
在调试器下运行程序和运行它非常类似,Eclipse提供了两个选项:选择“使用全方位服务运行调试”菜单使用一个快捷配置,如果默认选项正确,也可以选择“运行以...调试Java应用程序”。在这里我们使用后者。
确保编辑器中的HelloWorld代码被全部选中了,然后从主菜单中选择“运行以...调试Java应用程序”,Eclipse将会启动程序,切换到调试透视图,在断点暂停执行,如图3所示。
Java代码 src="http://images.51cto.com/files/uploadimg/20090603/181215420.jpg" width=480>
图- 3 调试HelloWorld:在第一个断点执行被暂停
调试透视图包括多个新的视图,都是用于调试使用的,首先,在左上方是调试视图(不要和调试透视图混淆了),它显示了所有调用堆和当前所有线程的状态,包括所有已经执行完毕的线程,程序运行到断点位置时,状态显示为暂停。
单步调试代码
调试视图的标题栏是一个让你可以控制Java程序执行的工具栏,前面几个按钮和电子设备,如CD播放器的控制按钮风格非常类似,允许你暂停、继续和终止程序,这些按钮让你可以一行一步地执行程序代码,鼠标移动到每个按钮上时都会显示按钮提示信息,如跟踪,单步,返回等。
如第二个按钮跟踪,当前执行的程序代码在编辑器中处于高亮状态:调用say()函数。如果跟踪的话就会进入这个函数内部,点击跟踪后,高亮的行是首先执行的行 — for语句。
一般情况下,你只想跟踪你自己写的类,对于标准类和第三方类通常没有什么问题,是不需要跟踪的,这时候可以使用过滤后跟踪功能,即Step With Filters,选择Window.Preferences.Java.Debug.Step过滤器,然后选择列出的包和类,多花点时间设置过滤器可以有效减轻调试难度,当你使用普通的跟踪调试功能时经常会遇到许多未知错误,这时使用过滤跟踪就能很好解决这一问题。
评估变量和表达式
调试视图的右边是一个标签视窗包含视图,在这里你可以检查和修改变量和断点,选择变量标签页,这个视图显示了当前范围的变量及其值,在进入for循环之前,这个视图仅包括say()函数的msg参数及其值,单机单步或跟踪按钮进入for循环,变量视图将会显示循环标志i及其值0。
有时一个Java程序有许多变量,但你仅对其中一个或几个感兴趣,为了监视选择的变量和表达式,你可以将它们添加到表达式视图中的监视列表中,例如,选择一个变量i(在编辑器中双击它),点击右键,从弹出的右键菜单中选择监视,这个变量(及其值)就会显示在表达式视图中。
监视变量的一个好处是你可以检查对象和它们的值的详细信息,并且可以修改它们的值。返回到变量视图,展开msg变量显示它的属性,它是一个char数组,展开msg字符串可以显示它的值,例如,双击H,会提示你输入一个新值,如J。
在同一个标签视窗中的是显示视图,它允许你输入任何允许的变量或包括这些变量的实例表达式,选择显示视图然后输入:
msg.charAt(i)
为了快速评估这个表达式,你必须先选中它,然后点击第二个显示视图工具按钮(显示所选文本评估结果),它在显示视图中显示结果,通常最好点击第一个工具按钮(检查所选文本评估结果),因为它添加表达式到表达式视图中,不管使用哪种方法,当表达式中的变量发生变化时,显示的值都不回自动更新。但在表达式视图中,你可以讲表达式转为监视表达式,当你单步调试代码时就会自动更新,切换到表达式视图,注意检查按钮显示下一个表达式,点击表达式然后从弹出的上下文菜单中选择转换成监视表达式,下一个表达式图标将会变成监视图标。
我们还是回到单步调试代码中,你前面在调用System.out.println()时留下了游标,如果你想查看System.out.println()的代码,你可以点击跟踪,否则就点击单步执行System.out.println()函数,开始下一个for循环。
在编辑器下方是连一个标签视窗,包括控制台视图,程序输出就显示在这里,如果你象前面说的那样将H改为J了,那这里将会显示Jello, world!。你也可以点击单步执行,直到循环终止,如果你觉得这个过程太过冗长,也可以点击返回快速结束say()函数返回到main()函数,或者点击继续按钮让Java程序运行到终点。
小结
Eclipse最有用的特性之一就是它集成的调试器,它可以交互式执行代码,通过设置断点,逐行执行代码,检查变量和表达式的值等功能反应其强大的功能,它是一款检查和修复Java程序代码问题的不可替代的工具。

分享到:
评论

相关推荐

    使用 Eclipse 调试 Java 程序的几个技巧

    ### 使用Eclipse调试Java程序的关键技巧 #### 一、断点视图:条件断点的高效运用 在进行复杂逻辑的调试时,条件断点能够帮助开发者聚焦于特定的执行路径,这对于理解程序的行为至关重要。例如,当你仅关心某个循环...

    使用 Eclipse 调试 Java 程序的技巧

    true的时候暂停程序,或者当代码片段的值改变的时候挂起程序。 顾名思义就是一个有一定条件的断点,只有满足了用户设置的条件,代码才会在运行到断点处时停止。 在断点处点击鼠标右键,选择最后一个...

    Eclipse 调试 Java 程序的 几个个技巧.docx

    本文将介绍使用 Eclipse 调试 Java 程序的 10 个技巧,这些技巧可以帮助开发者更方便地调试程序、节省时间和提高开发效率。 1. 切分复杂的逻辑 在调试程序时,经常会遇到复杂的逻辑代码。为了更好地调试这些代码,...

    Eclipse远程调试Java代码

    本篇文章将详细讲解如何在Eclipse中设置和使用远程调试Java代码。 首先,我们需要理解远程调试的基本原理。远程调试允许开发者在本地IDE上对运行在另一台机器上的应用程序进行调试。这通常通过JVM的远程调试接口...

    eclipse调试java代码,pptx

    ### Eclipse调试Java与Android代码详解 #### 一、配置Eclipse + ADT + SDK环境 在开始使用Eclipse进行Java及Android代码调试之前,需要确保已经正确安装并配置好了Java Development Kit (JDK)、Eclipse IDE以及...

    使用 Eclipse 调试 Java.doc

    总的来说,Eclipse的调试功能强大且灵活,通过条件断点、变量断点、方法断点、改变变量值、回退、远程调试以及异常断点,开发者能够有效地诊断和修复Java程序中的问题。熟练掌握这些技巧,将极大地提升开发效率和...

    Eclipse调试Java的10个技巧

    ### Eclipse调试Java的十个高效技巧 #### 一、概述 在开发Java应用程序的过程中,调试是一项不可或缺的任务。良好的调试技能能够帮助开发者快速定位问题并解决它们。Eclipse是一款广泛使用的Java集成开发环境(IDE)...

    使用Eclipse调试J2ME程序

    【使用Eclipse调试J2ME程序】 Eclipse是一款广泛使用的集成开发环境(IDE),尤其在Java开发领域,它提供了强大的支持。对于J2ME(Java Micro Edition)这种针对嵌入式设备和移动设备的Java平台,Eclipse同样可以...

    使用 Eclipse 和 PDT 调试 PHP

    使用 Eclipse 和 PDT 调试 PHP Eclipse 是一个功能强大的集成开发环境(IDE),它支持多种编程语言,包括 Java、Python、...使用 Eclipse 和 PDT 可以快速构建、编译、调试和运行 PHP 项目,提高开发效率和代码质量。

    如何使用Eclipse编译C,C++,JAVA程序

    以下将详细介绍如何使用Eclipse进行C,C++,JAVA程序的编译。 一、编译环境配置 1. **J2SE(TM) Development Kit (JDK)** JDK是Java开发工具包,它是编写、运行和调试Java应用程序的基础。JDK包含了Java编译器...

    使用eclipse/ndk-gdb对java/native code联合调试

    必很多网友都有这样的疑惑,我的程序中上层是java代码,下层使用c/c++ 写的,那到底要怎么调试呢? 我们首先想到的是ndk-...如果能将二者结合起来,一边用eclipse调试java代码,同时用ndk-gdb调试,那就再好不过了。

    在Eclipse中调试程序

    在Eclipse这个强大的Java开发环境中,调试程序是开发者日常工作中不可或缺的部分。Eclipse提供了丰富的调试工具和功能,帮助我们理解代码的运行过程,定位并修复问题。以下将详细讲解如何在Eclipse中进行程序调试。 ...

    CAS-server Eclipse调试运行源代码

    同时,Eclipse是常用的Java开发工具,支持代码编辑、构建、调试等功能。 2. **获取源代码**:从CAS的官方仓库(如GitHub)克隆或下载源代码。确保获取的是与你项目需求相匹配的版本。 3. **导入项目**:在Eclipse...

    eclipse-java-2022-06-R-win32-x86_64.zip

    2. **JDT**:Java Development Tools是Eclipse的核心组件,提供了源代码编辑器、编译器、调试器和项目管理工具。它支持语法高亮、自动代码完成、重构等功能。 3. **项目管理**:在Eclipse中,项目是组织代码和资源...

    eclipse开发java程序电子书籍(高清)

    "Eclipse开发java程序电子书籍(高清)"提供了两个核心资源,帮助用户深入理解和掌握如何使用Eclipse进行Java程序开发。 1. **Eclipse整合开发工具.pdf**:这本书主要围绕Eclipse的基础使用展开,涵盖了Eclipse安装...

    eclipse-java-2023-09-R-linux-gtk-x86-64.tar.gz

    在Eclipse中,开发者可以创建新的Java项目,导入已有的项目,编写源代码,利用内置的构建工具进行编译,使用JUnit进行单元测试,以及进行复杂的调试。此外,Eclipse的插件系统允许用户扩展其功能,以满足不同开发...

    eclipse-java-2021-06-R-win32-x86_64

    对于初学者,安装Eclipse IDE后,可以通过新建Java项目,导入或创建源代码,配置项目构建路径,然后进行编译、运行和调试。对于专业开发者,Eclipse的强大在于其定制性和可扩展性,可以根据个人或团队的工作流程来...

    Java开发环境Eclipse远程调试端口配置

    ### Java开发环境Eclipse远程调试端口配置 #### 运行环境配置 为了实现Java Eclipse远程调试功能,首先需要确保本地开发环境与远程服务器环境之间的兼容性和一致性。具体步骤如下: 1. **运行ncSysconfig命令**:...

Global site tag (gtag.js) - Google Analytics