- 浏览: 553909 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (533)
- spring (8)
- struts (21)
- hibernate (17)
- java其他 (73)
- 设计模式 (2)
- 开发软件/插件 (26)
- android (8)
- extjs4 (1)
- 网络编程 (4)
- 生活杂记 (3)
- ibatis (5)
- 应用服务器 (4)
- js (26)
- html/css (16)
- linux (0)
- db (32)
- jsp/servlet (13)
- xml (9)
- webservice (10)
- 错误/异常处理 (23)
- 线程 (10)
- maven (7)
- lucene (2)
- python (0)
- 报表 (1)
- mongodb (6)
- restful (6)
- ssl (1)
最新评论
-
zmwxiaoming:
...
struts2拦截器验证登陆状态 -
u012413283:
感谢楼主,同样的问题解决了
eclipse下安装m2e的maven插件报错的各类解决方案(含pom editor没装好的解决方案) -
javalucky:
你妹,想不吐槽都不行啊,eclipse 那来的maven4My ...
clipse加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin: -
zhaoyh82:
感谢楼主
eclipse下安装m2e的maven插件报错的各类解决方案(含pom editor没装好的解决方案) -
hua2011:
按照楼主说的,还是没有出现pom editor编辑器,麻烦楼主 ...
eclipse下安装m2e的maven插件报错的各类解决方案(含pom editor没装好的解决方案)
Eclipse SDK 是针对 Java™ 开发工具(Java™ Development Tools,JDT)的项目,它具有一个内置的 Java 调试器,可以提供所有标准的调试功能,包括分步执行、设置断点和值、检查变量和值、挂起和恢复线程的功能。除此之外,还可以调试远程机器上运行的应用程 序。Eclipse 平台很健壮,因为其他编程语言可以将该平台提供的调试工具用于各自的语言运行时。正如下文所示,同一个 Eclipse Debug 视图也可以用于 C/C++ 编程语言。
Eclipse 平台工作台及其工具是围绕 JDT 组件构建的,该组件为 Eclipse 提供了下列特性:
- 项目管理工具
- 透视图和视图
- 构造器、编辑器、搜索和构建功能
- 调试器
Eclipse 调试器本身是 Eclipse 内的一个标准插件集。Eclipse 还有一个特殊的 Debug 视图,用于在工作台中管理程序的调试或运行。它可以显示每个调试目标中挂起线程的堆栈框架。程序中的每个线程都显示为树中的一个节点,Debug 视图显示了每个运行目标的进程。如果某个线程处于挂起状态,其堆栈框架显示为子元素。
在使用 Eclipse 调试器之前,假定您已经安装了合适的 Java SDK/JRE(我推荐使用 Java VM V1.4)和 Eclipse Platform SDK V3.3,而且两者的运行都没问题。一般来说,先用 Eclipse 示例测试一下调试选项比较好。如果想开发和调试 C/C++ 项目,还需要获得并安装 C/C++ 开发工具(C/C++ Development Tools,CDT)。关于 Java SDK/JRE、Eclipse 平台和示例以及 CDT,请参阅 参考资源 。 图 1 显示了 Debug 透视图的一般视图。
图 1. Eclipse Debug 透视图的一般视图
调试 Java 语言程序
在可以调试项目前,需要干净地编译和运行代码。首先,需要为应用程序创建一个运行配置,确保应用程序可以正确启动。然后,需要通过Run > Debug 菜单以类似的方式设置调试配置。还需要选择一个类,将它作为调试的主 Java 类来使用(请参见图 2)。您可以按照自己的意愿为单个项目设置多个调试配置。当调试器启动时(从Run > Debug ),会在一个新的窗口中打开,这时就可以开始调试了。
图 2. 在调试配置中设置项目的主 Java 类
接下来,将讨论 Eclipse 中的一些常用调试实践。
设置断点
在启动应用程序进行调试时,Eclipse 会自动切换到 Debug 透视图。毫无疑问,最常见的调试步骤是设置断点,这样可以检查条件语句或循环内的变量和值。要在 Java 透视图的 Package Explorer 视图中设置断点,双击选择的源代码文件,在一个编辑器中打开它。遍历代码,将鼠标放在可疑代码一行的标记栏(在编辑器区域的左侧)上,双击即可设置断点。
图 3. 编辑器左侧看到的两个断点
现在,从 Run > Debug 菜单启动调试会话。最好不要将多条语句放在一行上,因为会无法单步执行,也不能为同一行上的多条语句设置行断点。
图 4. 视图中左侧空白处的箭头指示当前正在执行的行
还有一个方便的断点视图来管理所有的断点。
图 5. 断点视图
条件断点
一旦了解到错误发生的位置,您可能想要知道在程序崩溃之前,程序在做什么。一种方法就是单步执行程序的每行语句。一次执 行一行,直到运行到可疑的那行代码。有时,最好只运行一段代码,在可疑代码处停止运行,在这个位置检查数据。还可以声明条件断点,它在表达式值发生变化时 触 发(请参见图 6)。除此之外,在输入条件表达式时,也可以使用代码帮助。
图 6. 设置条件断点触发器
计算表达式的值
为了在 Debug 透视图的编辑器中计算表达式的值,选择设置了断点的那行代码,在上下文菜单中,通过 Ctrl+Shift+I 或右键单击您感兴趣的变量(参见图 7)选择 Inspect 选项。在当前堆栈框架的上下文中会计算表达式的值,在 Display 窗口的 Expressions 视图中会显示结果。
图 7. 通过Inspect 选项计算表达式的值
剪切活动代码
Display 视图允许您以剪切类型的方式处理活动代码(参见图 8)。要处理一个变量,在 Display 视图中输入变量名即可,视图会提示您一个熟悉的内容助手。
图 8. Display 视图
当调试器停止在一个断点处时,您可以从 Debug 视图工具栏(参见图 9)中选择 Step Over 选项,继续调试器会话。该操作会越过高亮显示的那行代码,继续执行同一方法中的下一行代码(或者继续执行调用当前方法的那个方法的下一行代码)。执行上一 步后发生改变的变量会用某种颜色高亮显示(默认是黄色)。颜色可以在调试首选项页面中改变。
图 9. 改变颜色的变量
要在 Debug 视图中挂起执行线程,选择一个运行线程,单击 Debug 视图工具栏中的Suspend 。 该线程的当前调用堆栈就会显示出来,当前执行的代码行就会在 Debug 透视图中的编辑器中高亮显示。挂起一个线程时,将鼠标放在 Java 编辑器中的变量上,该变量的值就会在一个小的悬停窗口中显示出来。此时,该线程的顶部堆栈框架也会自动选中,其中的可视变量也会在 Variables 视图中显示出来。您可以通过单击 Variables 视图中合适的变量名来检查变量。
热交换错误修正:动态代码修正
如果运行的是 Java 虚拟机(Java Virtual Machine,JVM)V1.4 或更高的版本,Eclipse支持一个叫做热交换错误修正(Hotswap Bug Fixing)的功能,JVM V1.3 或更低的版本不支持该功能。该功能允许在调试器会话中改变源代码,这比退出应用程序、更改代码、重新编译、然后启动另一个调试会话更好。要利用该功能,在 编辑器中更改代码后重新调试即可。由于 JVM V1.4 与 Java 平台调试器架构(Java Platform Debugger Architecture,JPDA)兼容,所以才有可能具备该功能。JPDA 实现了在运行的应用程序中替换经过修改的代码的功能。如果应用程序启动时间较长或执行到程序失败的地方时间很长,那么这一点特别有用。
如果在完成调试时,程序还没有全部执行一遍,在 Debug 视图的上下文菜单中选择 Terminate 选项。容易犯的一个错误是在调试器会话中使用 Debug 或 Run,而不是Resume。这样做会启动另一个调试器会话,而不是继续当前会话。
远程调试
Eclipse 调试器提供了一个有趣的选项,可以调试远程应用程序。它可以连接到一个运行Java 应用程序的远程 VM,将自己连接到该应用程序上去。使用远程调试会话与使用本地调试会话大致相同。但是,远程调试配置需要在Run > Debug 窗口中配置一些不同的设置。需要在左侧视图中先选择Remote Java Application 选项,然后单击New 。这样就创建了一个新的远程启动配置,会显示出三个选项卡:Connect、Source 和 Common。
在Connect 选项卡的 Project 字段,选择在启动搜索源代码时要引用的项目。在 Connect 选项卡的 Host 字段,输入运行 Java 程序的远程主机的 IP 地址或域名。在 Connect 选项卡的 Port 字段,输入远程 VM 接收连接的端口。通常,该端口在启动远程 VM 时指定。如果想让调试器决定在远程会话中 Terminate 命令是否可用,可以选择 Allow termination ofremote VM 选项。如果希望可以终止连接的 VM,则选择该选项。现在,在您选择 Debug 选项时,调试器会尝试连接到指定地址或端口的远程 VM,结果会在 Debug 视图中显示出来。
如果启动程序不能连接到指定地址的 VM,会出现一条错误信息。通常来说,是否可以使用远程调试功能完全取决于远程主机上运行的Java VM。图 10 显示了一个远程调试会话的连接属性设置。
图 10. 设置一个远程调试会话的连接属性
调试其他语言
尽管 Java 语言是 Eclipse 使用的最广泛的语言,但是 Eclipse 是一个可扩展的平台,可以支持许多其他的语言。Eclipse 可以通过 C/C++ 开发工具(CDT)支持C/C++ 。CDT 扩展了标准的 Eclipse Debug视图,添加了调试 C/C++ 代码的功能,CDT Debug 视图可以在工作台中管理 C/C++ 项目的调试过程。CDT 中没有内部的调试器,但是它提供了一个 GNU GDB 调试器的前端,该调试器必须在本地可用。还有其他项目可以提供各自的调试器,例如 PHP 开发工具(PHP Development Tools ,PDT),请参见图 11。
图 11. PHP 调试器
发表评论
-
idea总结
2013-12-20 23:09 7561. IDEA内存优化 先看看 ... -
jira的详细安装和破解
2013-12-04 11:04 1230jira的详细安装和破解 以下是在Windows20 ... -
jQuery插件FullCalendar日程表实现可扩展Google日历功能
2013-07-01 11:56 3487[javascript] view plainc ... -
eclipse中build workspace的相关优化
2013-06-25 11:51 11527网上流传的各种的eclipse的调优的方法都大同小异,但是 ... -
PowerDesigner15使用时的十五个问题
2013-06-20 18:55 882刚看到一篇很好的文章,转过来方便以后查看,原文链接:http ... -
nexus-2.5安装(图文)
2013-06-18 11:07 1401用nexus搭 ... -
Hibernate Tools的使用
2013-06-08 10:18 1041- Hibernate的配置文件hibernate.c ... -
eclipse部署,在tomcat中找不到eclipse发布的项目。eclipse更改项目发布路径
2013-06-07 15:43 1971在新版的eclipse中,配置好项目,发布之后,发现在tom ... -
eclipse开发国际化项目利器:MultiProperties
2013-05-29 16:46 1177eclipse中的Properties File Ed ... -
Sublime: Unable to find git.exe错误
2013-05-25 12:54 1601使用Package Control安装插件时,如果出现下面的 ... -
sublime_text3汉化,破解,安装Package_control支持中文显示
2013-05-25 10:35 8110用过sublime的朋友可能都知道,这个工具的 ... -
eclipse如何把多个项目放在一个文件夹下
2013-04-03 13:53 1891有时我们的eclipse中会有 ... -
eclipse不能创建java虚拟机-解决方法
2012-12-19 20:41 2107今天打开eclipse时,突 ... -
PLSQL Developer设置及快捷键设置
2012-11-09 09:43 11801、登录后默认自动选 ... -
MyEclipse8.6 web中jsp页面出现jquery,dojo等代码自动提示
2012-11-08 16:35 1689用myeclipse8.6的朋友, 可能发现这个版本可在 ... -
java串口 来电显示
2012-11-08 09:52 1502一.使用sun公司的comm.jar 1.配置(下载com ... -
editplus和emeditor下开发编译java程序
2012-11-05 15:38 1131EditPlus & EMEditor for Jav ... -
eclipse下3种安装插件的方式及缺点比较
2012-10-29 14:40 1277这篇文章我就介绍Eclipse中插件的三中安装方式 ... -
maven常用命令行及解释
2012-10-25 13:57 1617最近突然在maven的安装目录下,找到了以前的一些笔记,里面 ... -
eclipse下安装m2e的maven插件报错的各类解决方案(含pom editor没装好的解决方案)
2012-10-24 16:19 5017安装eclipse插件,我想大家已经熟悉的不能再熟悉了,本不 ...
相关推荐
### Eclipse调试器和Debug视图知识点详解 #### 一、Eclipse SDK与内置Java调试器 **Eclipse SDK**(Software Development Kit)是专为Java开发设计的一个强大平台,其中包括了JDT(Java Development Tools)组件,...
Eclipse 中 Debug 调试及视图是 Eclipse 平台中的一个标准插件集,提供了一个内置的 Java 调试器,可以提供所有标准的调试功能,包括分步执行、设置断点和值、检查变量和值、挂起和恢复线程的功能。除此之外,还可以...
Debug视图是Eclipse调试器的核心组成部分,以树形结构展示程序的调试信息。每个线程都作为一个树节点,显示其调试堆栈帧结构。在Debug视图中,你可以: 1. **执行控制命令** - **设置/取消断点**:通过在源代码...
Eclipse调试器是Eclipse IDE中的核心组件之一,它允许开发者对Java应用程序进行逐步执行、查看变量值、设置断点、检查调用栈等操作。通过调试器,您可以深入代码内部,找出程序运行过程中的问题,提高问题定位的效率...
Debug视图是Eclipse调试功能的核心,它提供了对正在运行和调试的程序的全面管理。在Debug视图中,可以看到每个线程的堆栈帧,以及它们之间的调用关系。如果某个线程被挂起,那么它的堆栈帧将以子元素形式展示出来。...
Debug视图展示了正在运行的程序的状态信息,包括但不限于: - **挂起的线程的堆栈帧**:列出当前程序中所有线程的信息,以及它们在哪个位置被暂停。 - **常用调试按钮**:提供了一系列控制程序运行的操作,如“跳过...
在使用 Eclipse 进行软件开发时,...总之,Eclipse 调试器结合 Debug 视图提供了一个全面、直观的调试环境,使得开发者能够高效地定位和解决问题。通过熟练掌握这些工具和快捷键,可以极大地提高开发效率和代码质量。
Eclipse平台工作台及其工具是围绕JDT组件构建的,该组件为Eclipse提供了项目管理工具、透视图和视图、构造器、编辑器、搜索和构建功能、调试器等。 二、Eclipse中和Debug相关的视图 Debug View是Eclipse中一种重要...
标题 "Eclipse Flex FlashPlayer Debug 安装" 涉及到的是在开发环境中设置Adobe Flex与Flash Player调试器的过程。这个过程对于Flex开发者来说至关重要,因为它允许他们在Eclipse集成开发环境中对Flash应用程序进行...
【Eclipse Debug Flash教程】 Eclipse作为一款强大的Java...通过熟练掌握设置项目、配置调试器、设置断点、开始调试以及问题排查等步骤,能够提升开发效率,解决实际问题,从而优化和提升Flash应用的性能和用户体验。
详细介绍Eclipse调试技巧:该调试器提供所有标准调试功能,包括进行单步执行、设置断点和值、检查变量和值以及暂挂和恢复线程的能力。这篇文章主要讲述Eclipse调试器,包括Debug视图,断点的设置。
在文件"1272237.html"和"1272237_files"中,可能包含有关如何使用Eclipse调试PHP的更具体步骤或示例代码。阅读这些文件将加深你对Eclipse调试PHP过程的理解,并能帮助你在实际开发中更好地应用这些技巧。 总的来说...
以上就是Eclipse调试方法的一些核心内容,熟练掌握这些技巧,能让你在面对复杂的程序问题时更加游刃有余。在实际开发过程中,不断实践和探索,你会发现Eclipse的强大不仅仅在于它的快捷键,更在于它对开发流程的全面...
Eclipse调试器提供了所有标准调试功能,包括单步执行、设置断点和值、检查变量和值以及暂挂和恢复线程的能力。使用Eclipse调试器可以使查找错误的信息变得相当简单。 Eclipse平台WORKBENCH(Eclipse Platform ...
7. **远程调试Maven**:如果需要调试远程Maven构建,可以在Maven的`mvn debug`命令中添加参数`-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y`,这将启动一个等待连接的调试器。在Eclipse...