`

Eclipse调试深入

阅读更多
   背景:我个人的调试仍然停留在断点调试,停留在F5 F6 F7,watch阶段而对于更深层次的调试技巧则一无所知,因此今天打算深入地学习一下。
 
   发现不错的参考资料:
  http://daimojingdeyu.iteye.com/blog/633824
文章主要提到了如下东东:
1、 条件断点
2、 变量断点
3、 方法断点
4、 改变变量值

5、 重新调试
6、 远程调试
7、 异常断点

—————————————对文章所做的补充——————————————
1、 在调试过程,可以调display窗口,在里面可以书写任何当前存在的表达式进行求值,
并且可以根据运行表达式,改变某些变量的值.
    运行表达式的默认快捷键为: Ctrl+Shift+D

2、 远调有一个问题就是本地代码要和远程机上的代码一致,而且在编译时需要带行号编译,不然无法找到Class类对应的源代码中的行号信息,也就不确定断点停在代码的什么地方了。
需要对方也有eclipse或源码吗?客户那里通常都是部署war包无源码
不需要对端有源码,也不需要对端有Eclipse,只要对端有部署的java包就好,只需要本端有就可以了,就像你说的对端也是基本上不会有源码的。需注意对端的java包中的类文件需要和本地源码一致,不然调试时会行错乱。

3、 return function(x,y);
    这个时候想看看到底返回啥该如何做呢? ^_^ ^_^ 我一直都是使用一个临时变量来接受表达式的值然后查看临时变量的值,如int a = return function(x,y),调试时查看a的值, 感觉比较麻烦呀!!!
     好办法:
   选中函数,右键,然后选Inspect,或使用快捷键Ctrl+Shift+I

4、 有一个小技巧不错,在表达式窗口添加一条表达式
网友版:throw new Throwable("");
并且设为disable,
当调试到某一个地方已经得到想要的结果,下面不想继续调试了,
但是又不想重新启动tomcat之类的服务器,enable这条表达式,
等待异常抛出完,然后设为disable,否则下次进不了调试。
这种情况适用于调试后需要修改代码验证,但是后面有数据库保存
操作,不想把剩余的代码跑完的情况。
但是经我的试验发现并不需要设置什么enable,直接抛Throwable即可

5、注意:最好不要将多条语句放在一行上,因为会无法单步执行,也不能为同一行上的多条语句设置行断点。

6、 继续深入学习,参考资料:Eclipse平台调试

7、 对于多层架构的系统,eclipse里调试受到比较大的约束时,还是用log4j来比较方便。
分享到:
评论

相关推荐

    用Eclipse开发和调试Android应用程序

    现在,我们已经可以使用Eclipse来创建和开发Android应用程序,本文将仍以Hello Android World工程来深入解析Eclipse中Android工程的结构以及调试。同时,顺带介绍Android中的核心组件及其生命周期,以及设计理念。

    2024年最全Eclipse安装和配置环境教程.zip

    本教程深入探讨了Eclipse集成开发环境(IDE)的高级特性、最佳实践以及如何更有效地利用它来提升编程技能。内容包括工作空间管理、代码重构、集成外部工具和框架、性能优化、自定义Eclipse界面等。同时,还介绍了...

    深入理解Android:卷2,中文完整扫描版

    《深入理解Android:卷2》共8章:第1章介绍了阅读本书所需要做的准备工作,包括Android 4.0源码的下载和编译、Eclipse环境的搭建,以及Android系统进程(system_process)的调试等;第2章对Java Binder和MessageQueue...

    深入理解Android(卷2)

    《深入理解Android:卷2》共8章:第1章介绍了阅读本书所需要做的准备工作,包括Android 4.0源码的下载和编译、Eclipse环境的搭建,以及Android系统进程(system_process)的调试等;第2章对Java Binder和MessageQueue...

    深入体验java+web开发.zip

    使用Eclipse将项目文件导入后即可调试,需要JDK 1.6 + Android 1.5及以上版本的环境运行。 --------------------------------------------------------------------- 2. 手机游戏 使用Eclipse将项目文件导入后...

    Eclipse开发分布式商城系统+完整视频代码及文档

    │ │ 深入理解Java内存模型.pdf │ │ │ └─课后资料 │ ├─笔记 │ │ 淘淘商城_day20_课堂笔记.docx │ │ │ └─视频 │ 07-使用Jedis连接集群操作.avi │ 00-今日大纲.avi │ 01-RDB持久化方式.avi │ 02...

    《深入理解Android》卷Ⅱ

    1.2.3 利用Eclipse调试system_process 1.3 本章小结 第2章 深入理解Java Binder和MessageQueue 2.1 概述 2.2 Java层中的Binder架构分析 2.2.1 Binder架构总览 2.2.2 初始化Java层Binder框架 2.2.3 ...

    cupid:Eclipse 信息混搭和可视化插件

    Cupid 的目标是让您立即访问所需的信息,以深入了解您的项目和团队。 丘比特可以帮助回答开发过程中出现的许多问题,例如: 关于这个文件我应该联系谁? (谁是文件最频繁的提交者?) 调试堆栈跟踪的哪些部分...

    Hadoop技术内幕:深入解析MapReduce架构设计与实现原理

    阅读源代码前的准备1.1 准备源代码学习环境1.1.1 基础软件下载1.1.2 如何准备Windows环境1.1.3 如何...Eclipse插件介绍1.6 编译及调试Hadoop源代码1.6.1 编译Hadoop源代码1.6.2 调试Hadoop源代码1.7 小结第2章...

    kotlin开发的基本流程.doc

    然后,安装Kotlin插件,这可以在各种集成开发环境(IDE)如IntelliJ IDEA、Android Studio和Eclipse中进行。 创建项目:在IDE中创建一个新的Kotlin项目,并选择Kotlin作为主要开发语言。如果已经有Java项目,也可以...

    pro_android_cpp_with_the_ndk.pdf

    第2章 深入了解AndroidNDK 2.1 AndroidNDK提供的组件 2.2 AndroidNDK的结构 2.3 以一个示例开始 2.3.1 指定AndroidNDK的位置 2.3.2 导入示例项目 2.3.3 向项目中添加原生支持 2.3.4 运行项目 2.3.5 用命令行对项目...

    JSP基于SSM咖啡馆资讯网站设计

    ## 程序调试软件:myEclipse/Eclipse/Idea都可以 数据库:mysql ## 注意:请用jdk1.7以上,必须用tomcat7以上! 咖啡作为西方的一种来自西方的饮品,对于大多数的国人来说,只是片面的知道一些品种,对于他们的起源、...

    python灰帽子包含高清扫描和可复制两个版本.zip

    构建自己的调试工具,如何自动化实现烦琐的逆向分析任务,如何设计与构建自己的fuzzing工具,如何利用fuzzing测试来找出存在于软件产品中的安全漏洞,一些小技巧诸如钩子与注入技术的应用,以及对一些主流Python安全...

    初级,中级,高级的程序员java简历

    了解常用的Java开发工具和框架,如Eclipse、Spring等 具有良好的团队合作和沟通能力 中级程序员Java简历资源描述: 在Java开发领域有一定的工作经验,能够独立完成项目开发和维护 熟练掌握Java EE开发技术,包括...

    Android编程入门很简单.(清华出版.王勇).part2

    2.5.2 为Eclipse设置SDK路径 2.6新建模拟器 2.6.1 新建AVD 2.6.2运行模拟器 2.7真机测试 2.7.1安装手机驱动 2.7.2设置手机 2.8 小结 第3章创建第一个程序——helloworld 3.1新建第一个程序 3.1.1新建工程 3.1.2运行...

    Android编程入门很简单.(清华出版.王勇).part1

    2.5.2 为Eclipse设置SDK路径 2.6新建模拟器 2.6.1 新建AVD 2.6.2运行模拟器 2.7真机测试 2.7.1安装手机驱动 2.7.2设置手机 2.8 小结 第3章创建第一个程序——helloworld 3.1新建第一个程序 3.1.1新建工程 3.1.2运行...

    毕业设计,基于SSM+MySql+Bootstrap+EasyUI开发的咖啡馆资讯网站,内含Java完整源代码,数据库脚本等

    程序调试软件:myEclipse/Eclipse/Idea都可以 数据库:mysql 注意:请用jdk1.7以上,必须用tomcat7以上! 咖啡作为西方的一种来自西方的饮品,对于大多数的国人来说,只是片面的知道一些品种,对于他们的起源、历史、...

    疯狂Android讲义源代码2

    1.3.3 使用DDMS进行调试 1.3.4 Android Debug Bridge(ADB)的用法 1.3.5 使用DX编译Android应用 1.3.6 使用Android Asset Packaging Tool(AAPT)打包资源 1.3.7 使用mksdcard管理虚拟SD卡 1.4 开始第一个...

    本科计算机毕业实习日记

    3月7日:学习环境变量的配置,以及ECLIPSE的安装调试。 3月8日:继续理论联系实践进行学习,学习数据表的建立和连接数据库的几种方法。 3月9日:系统的复习前几天所学的知识,对照其需求分析和已经实现的功能了解...

Global site tag (gtag.js) - Google Analytics